2016-07-12 9 views
5

Mam zainstalowany Ubuntu 16.04, który domyślnie jest dostarczany z PHP 7; ale ostatecznie zainstalowałem PHP 5.6 i mam apache używając 5.6.Funkcja utf8_encode undefined

Kiedy poszedłem do uruchomienia projektu kopalni, to powiedział mi, co następuje:

PHP Fatal error: Call to undefined function utf8_encode()

Czytam przez kilka stanowisk, gdzie inni mieli ten problem i próbowałem instalacji różnych rozszerzeń; ale nic nie pomogło.

Moje zrozumienie polegało na tym, że funkcja ta była domyślnie zapełniona PHP (4,5,7).

Wszelkie pomysły?

* Aktualizacja *

Próbowałem następujące polecenie, a ona wróciła fałszywe.

var_dump(is_callable('utf8_encode')); 

Oto zainstalowanych modów/rozszerzeń:

[PHP Modules] kalendarz Rdzeń ctype data dom ereg Exif fileinfo filtrem ftp gettext hash iconv json libxml mbstrin g Mhash mysql mysqli mysqlnd openssl PCNTL Pcre PDO Pdo_Mysql Phar posix readline Odbicie sesji shmop SimpleXML gniazd SPL średnia sysvmsg sysvsem sysvshm tokenizer wddx xml XmlReader xmlrpc XMLWriter xsl Zend OPcache zlib

[Zend Moduły] Zend OPcache

+0

Czy twój PHP skompilowany z '--disable-xml' ? Sprawdź swoje 'phpinfo()'. – deceze

+0

Sprawdź, jakie masz rozszerzenia php. –

+0

Usuń obie wersje php i spróbuj zainstalować ponownie. To powinno rozwiązać problem. – Nitin

Odpowiedz

6

następujące stałe to:

sudo a2enmod xml2enc

+3

Upewnij się, że php5.6-xml dla PHP 5.6 jest zainstalowany jako pierwszy. – PanPipes

13

Ubuntu:

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