【问题标题】:Function utf8_encode undefined函数 utf8_encode 未定义
【发布时间】: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


【解决方案1】:

以下修复它:

sudo a2enmod xml2enc

【讨论】:

  • 确保首先安装了 PHP 5.6 的 php5.6-xml。
【解决方案2】:

在 ubuntu 上:

sudo apt-get install php5.6-xml 
sudo service apache2 restart

【讨论】:

  • 在 Debian 9 上工作
  • 如果要安装 sudo apt-get install php7.1-xml
【解决方案3】:

在 FreeBSD 上试试这个命令

pkg 安装 php71-tokenizer-7.1.25 php71-zlib-7.1.25

【讨论】:

    猜你喜欢
    • 2011-10-05
    • 1970-01-01
    • 1970-01-01
    • 2014-10-01
    • 2014-06-19
    • 1970-01-01
    • 1970-01-01
    • 2021-10-16
    • 2018-12-20
    相关资源
    最近更新 更多