Я получаю ошибки, когда я запускаю phpmyadmin в 16,04.
Вот ошибки:
Deprecation Notice in ./../php/php-gettext/streams.php#48
Backtrace
./../php/php-gettext/gettext.inc#41: require()
./libraries/select_lang.lib.php#477: require_once(./../php/php-gettext/gettext.inc)
./libraries/common.inc.php#569: require(./libraries/select_lang.lib.php)
./index.php#12: require_once(./libraries/common.inc.php)
it continues with these as well with the same backtrace as above:
Deprecation Notice in ./../php/php-gettext/streams.php#84
Deprecation Notice in ./../php/php-gettext/streams.php#145
Deprecation Notice in ./../php/php-gettext/gettext.php#36
Я обновил и проверил, что нахожусь на последнем gettext и mbstring. Любые мысли о разрешении
Можно использовать другой PPA для phpmyadmin. Здесь это Ссылка PPA
sudo add-apt-repository ppa:nijel/phpmyadmin
sudo apt update
sudo apt install phpmyadmin
, Как это - только временное решение или не оптимальное, пока пакет phpmyadmin в человечности repos не, восстанавливают.
Это зависит, достаточно ли Вы предприимчивы. Если Вы понимаете ошибку, это означает, что Ваш PHP имеет некоторых старых конструкторов класса.
СТАРЫЙ конструктор класса Php
Class myclassname {
function myclassname() {
//This is a constructor
}
Новый конструктор класса Php
Class myclassname {
function __construct() {
//this is the new constructor using __construct instead of the same function name as class name.
}
Таким образом, то, что я сделал, должно было войти /usr/share/php/php-gettext/stream.php
и /usr/share/php/php-gettext/gettext.php
(или безотносительно файла, указанного в Вашей ошибке), перейдите к файлу и изменению function myclassname()
кому: function __construct
.
Функция myclassname
должно быть идентично КЛАССУ myclassname
объявление.
Необходимо заняться 4 ошибками, если Вы находитесь на человечности 16.04 с последним gettext. Я просто изменяю это, и это не вредно для Вашей системы. Это - устаревший синтаксис программирования и если бы Вы обновляете в будущем, Вы не столкнулись бы ни с какой проблемой также. Я скажу, что это - безопасное редактирование.
Это не действительно существенное изменение или что-либо, просто обновление синтаксиса. Если Вы устанавливаете из Кв. - получают пакет, у Вас действительно нет никакого другого выбора, если Вы не компилируете себя.
sudo nano /usr/share/php/php-gettext/streams.php
Строка 48 ошибок StringReader.
Пойдите для Выравнивания 52 и изменение
function StringReader ($str='') {
Кому:
function __construct($str='') {
Строка 84 ошибки FileReader
Пойдите для Выравнивания 90 и изменение
function FileReader($filename) {
кому:
function __construct($filename) {
Строка 145 ошибок CacheFileReader
Пойдите для Выравнивания 146 и изменение
function CachedFileReader($filename) {
кому:
function __construct($filename) {
Используя sudo nano /usr/share/php/php-gettext/gettext.php
.
Строка 36 gettext_reader {
ошибка
Я думаю, что Вы получаете суть теперь, пойдите для выравнивания 101 и изменение
function gettext_reader($Reader, $enable_cache = true) {
Кому:
function __construct($Reader, $enable_cache = true) {
Так как у меня нет достаточной репутации все же для комментария Кого-то большой ответ Специального предложения, просто отвечу я вместо этого.
Вот короткие команды, которые выполняют предложенные редактирования:
sed -ri.bak 's:function StringReader.*:function __construct($str=\x27\x27) {:' /usr/share/php/php-gettext/streams.php sed -ri 's:function FileReader.*:function __construct($filename) {:' /usr/share/php/php-gettext/streams.php sed -ri 's:function CachedFileReader.*:function __construct($filename) {:' /usr/share/php/php-gettext/streams.php sed -ri.bak 's:function gettext_reader.*:function __construct($Reader, $enable_cache = true) {:' /usr/share/php/php-gettext/gettext.php
Это сообщение" уведомления депрекации на странице входа в систему проблемы phpMyAdmin легко решено путем редактирования файла php.ini в /etc/php/7.0/apache2/php.ini
Измените значение error_reporting на:
error_reporting = ~E_DEPRECATED & E_ALL
По умолчанию это находится на положении комментария, так не прокомментируйте это и измените его.
Затем Apache перезапуска:
sudo systemctl restart apache2