код utf8 (en|de)удален из php7?
недавно я переключился на PHP 7 на моем сервере разработки, который работал просто отлично - до сих пор.
так как я обновился до PHP 7.0.3-10+deb.sury.org~trusty+1
(ранее сегодня),utf8_decode
и utf8_encode
функции больше не доступны. Они были, однако, в предыдущих версиях PHP7. При вызове возникает неустранимая ошибка.
Я читал, что эти функции обеспечиваются mbstring
расширение, которое я проверил с var_dump(extension_loaded('mbstring'));
загружается.
как я могу получить вышеуказанные функции опять работаешь?
7 ответов:
у меня была та же проблема. Просто установите
php7.0-xml
пакета. Ubuntu 16.04:sudo apt-get install php7.0-xml
Edit:перезапустить apache2 для загрузки нового пакета.
на Ubuntu, вы получили следующее сообщение во время обновления PHP7:
php7.0 (7.0.3-6) unstable; urgency=medium * Several extensions have been split into separate extension packages: - php-dba - Database (dbm-style) Abstraction Layer - php-mbstring - Multibyte String - php-soap - SOAP - php-xml - DOM, SimpleXML, WDDX, XML, XMLReader and XMLWriter - php-zip - Zip * The new packages are not installed automatically, so you will need to install them by hand, if you use the functions in those modules. * Most modules that have been builtin before are now included in php7.0-common package and they are enabled by default for your convenience. You can disable unneede modules via phpdismod tool. -- Ondřej Surý <ondrej@debian.org> Mon, 22 Feb 2016 12:37:09 +0100
Так что это один из тех пакетов, которые вызывают проблему. В данном случае, это
php-xml
.Примечание
новые пакеты не устанавливаются автоматически
вы можете исправить это с помощью
sudo apt-get install php-xml sudo apache2ctl graceful
поскольку верхний голосованный ответ не работал для меня, я нашел еще один пакет для php7, который (очевидно, по его названию) исправил его для меня
sudo apt-get install php7.0-mbstring