【发布时间】:2016-11-15 04:49:32
【问题描述】:
我安装了 Ubuntu 16.04,它默认带有 PHP 7;但我最终也安装了 PHP 5.6,并且我有 apache 使用 5.6。
当我去运行我的一个项目时,它告诉我以下内容:
PHP 致命错误:调用未定义函数 utf8_encode()
我阅读了一堆其他人遇到此问题的帖子,并尝试安装不同的扩展程序;但没有任何帮助。
我的理解是,默认情况下该函数将与 PHP (4,5,7) 打包在一起。
有什么想法吗?
* 更新 *
我确实尝试了以下方法,但它返回错误。
var_dump(is_callable('utf8_encode'));
这里是安装的模组/扩展:
[PHP 模块] 日历 核 类型 日期 dom 埃雷格 exif 文件信息 筛选 ftp 获取文本 哈希 图标v json libxml mbstring 哈希 mysql mysqli mysqlnd openssl pcntl 聚合酶链反应 PDO pdo_mysql 法尔 正则表达式 阅读线 反射 会议 shmop 简单XML 插座 声压级 标准 系统虚拟机 系统 系统 分词器 wddx xml xml阅读器 xmlrpc xmlwriter xsl Zend OPcache zlib
[Zend 模块] Zend OPcache
【问题讨论】:
-
你的 PHP 是用
--disable-xml编译的吗?检查您的phpinfo()。 -
您应该有一个名为
php5-xml或类似名称的包。该函数是 PHP XML 解析器的一部分 -
也许是一个愚蠢的问题,它已安装但是否启用?尝试 a2enmod / check mods-enabled 文件夹进行三重检查!
-
哦,我想我明白了。我做了
sudo a2enmod xml2enc,并修复了它。 -
哇!有点奇怪,默认情况下它没有启用:|
标签: php