2016-07-12 39 views
5

我安裝了Ubuntu 16.04,它默認帶有PHP 7;但我最終還是安裝了PHP 5.6,並且我使用了5.6的apache。函數utf8_encode undefined

當我去跑我的一個項目,它告訴我下面的:

PHP Fatal error: Call to undefined function utf8_encode()

我通過職位一堆,別人有這個問題看,並試圖安裝不同的擴展;但沒有任何幫助。

我的理解是,默認情況下該函數將與PHP(4,5,7)打包在一起。

任何想法?

*更新*

我曾嘗試以下內容,它回來了假。

var_dump(is_callable('utf8_encode')); 

下面是所安裝的器官功能障礙綜合徵/擴展:

[PHP模塊] 日曆 核心 CTYPE 日期 DOM EREG EXIF 的FileInfo 濾波器 FTP gettext的 散列 的iconv json libxml mbstrin克 mhash MySQL的 的mysqli mysqlnd OpenSSL的 PCNTL PCRE PDO PDO_MYSQL 的Phar POSIX 的readline 反射 會話 shmop 的SimpleXML 插座 SPL 標準 sysvmsg SYSVSEM SYSVSHM 標記生成器 WDDX xml 的XMLReader XMLRPC 的XmlWriter XSL 的Zend OPcache ZLIB

[Zend的模塊] 的Zend OPcache

+0

當時用'--disable-xml'編譯你的PHP ?檢查你的'phpinfo()'。 – deceze

+0

檢查你的PHP擴展。 –

+0

刪除兩個版本的PHP並嘗試再次安裝。這應該解決它。 – Nitin

回答

6

以下固定它:

sudo a2enmod xml2enc

+3

確保首先安裝PHP 5.6的PHP5.6-xml。 – PanPipes

13

ubuntu上:

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