utf8_(en|de)代码从php7中删除?

2022-08-30 09:07:26

我最近在我的开发服务器上切换到PHP 7,到目前为止,它一直工作得很好。

由于我更新到(今天早些时候),和 功能不再可访问。但是,它们在PHP7的先前版本中。调用时,将引发致命错误。PHP 7.0.3-10+deb.sury.org~trusty+1utf8_decodeutf8_encode

我读到这些功能是由扩展提供的,我检查了该扩展。mbstringvar_dump(extension_loaded('mbstring'));

如何让上述函数再次工作?


答案 1

我遇到了同样的问题。只需安装软件包。Ubuntu 16.04:php7.0-xml

sudo apt-get install php7.0-xml

编辑:重新启动 apache2 以加载新包。


答案 2

在 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

推荐