Reputation: 439
I have php 7.0 running on my ubuntu server.
php -m command says:
[PHP Modules] calendar Core ctype curl date dom exif fileinfo filter ftp gd gettext hash iconv intl json libxml mbstring mcrypt mysqli mysqlnd openssl pcntl pcre PDO pdo_mysql Phar posix readline Reflection session shmop SimpleXML sockets SPL standard sysvmsg sysvsem sysvshm tokenizer wddx xml xmlreader xmlwriter xsl Zend OPcache zip zlib
But still when I run my website, its log says "PHP Fatal error: Call to undefined function simplexml_load_file()"
Upvotes: 27
Views: 44123
Reputation: 384
For me, on Alpine, following line did the job:
apk add php7-simplexml
php7-xml
appeared to be a different library.
Upvotes: 0
Reputation: 11576
I had the same issue. I fixed it by installing php7.2-xml
:
$ sudo apt-get install php7.2-xml
$ sudo systemctl reload apache2
After that, SimpleXML got listed by php -m
:
$ php -m | grep -i simple
SimpleXML
Upvotes: 55
Reputation: 2145
I'm using ubuntu 18.04. When I checked for SimpleXML in module list, it was stated same like yours.
Then I check my phpinfo() which says it was pulling from different php version and not the same with php cli.
To check php cli version, I run php -v
To check for phpinfo(), I put the function at the top of index.php of my script.
After confirming that my phpcli version is different than whats in phpinfo,
I simply run this 2 command
sudo a2dismod php7.0
sudo a2enmod php7.3
Then restart my apache
sudo systemctl restart apache2
After that, I test again my phpinfo()
Now it is working.
Upvotes: 3