Je teste PHP7 et j'ai un problème étrange après une récente mise à jour. SimpleXML doit être activé par défaut, et ma page phpinfo
indique qu'elle est disponible:
Cependant, les fonctions ne sont pas disponibles:
<?php
if (function_exists('simplexml_load_file')) {
echo "simpleXML functions are available.<br />\n";
} else {
echo "simpleXML functions are not available.<br />\n";
}
// result-- NOT available
Et le module n'est pas répertorié comme chargé:
~ $ php -m
[PHP Modules]
calendar
Core
ctype
curl
...
Reflection
session
shmop
sockets
SPL
standard
sysvmsg
sysvsem
sysvshm
tokenizer
Zend OPcache
zlib
Quelqu'un sait s'il existe une solution pour cela?
Informations de version:
~ $ php -v
PHP 7.0.3-8+deb.sury.org~trusty+2 (cli) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
J'ai eu le même problème et j'utilise Ubuntu 15.10.
Dans mon cas, pour résoudre ce problème, j'ai installé le paquet php7.0-xml en utilisant le gestionnaire de paquets Synaptic, qui inclut SimpleXml. Ainsi, après le redémarrage de mon serveur Apache, mon problème a été résolu. Ce paquet est dans la version Debian et vous pouvez le trouver ici: https://packages.debian.org/sid/php7.0-xml .
Pour tous ceux qui utilisent Ubuntu avec ppa:ondrej/php
PPA, le problème sera résolu:
apt install php7.0-mbstring php7.0-Zip php7.0-xml
(voir https://launchpad.net/~ondrej/+archive/ubuntu/php )
Merci @Alexandre Barbosa pour l'avoir signalé!
EDIT 20160423:
One-Liner pour résoudre ce problème:
Sudo add-apt-repository -y ppa:ondrej/php && Sudo apt update && Sudo apt install -y php7.0-mbstring php7.0-Zip php7.0-xml
(Cela ajoutera le ppa mentionné ci-dessus et vous assurera également que vous avez toujours le dernier php. Nous utilisons le ppa PHP d'Ondřej depuis presque deux ans et ça marche à merveille)
Pour Ubuntu 14.04 avec
PHP 7.0.13-1 + deb.sury.org ~ trusty + 1 (cli) (NTS)
Sudo apt-get install php-xml
a travaillé pour moi.
J'utilise Bash sous Windows (Ubuntu 16.04) et je viens de l'installer avec php7.0-xml. Tout fonctionne pour les besoins de Symfony 3.2.7 PHP.
Sudo apt-get install php7.0-xml
Pour Alpine (dans le menu fixe), vous pouvez utiliser apk add php7-simplexml
.
Si cela ne fonctionne pas pour vous, vous pouvez exécuter apk add --no-cache php7-simplexml
. C'est dans le cas où vous ne mettez pas à jour d'abord l'index de paquet.
------------------ en centos -------------------------
yum provides php-xml
yum install php70u-xml-7.0.14-2.ius.centos7.x86_64
Généralement, sur les systèmes Debian, vous avez une configuration PHP différente pour la CLI et pour PHP fonctionnant comme un module Apache. Votre page phpinfo peut très bien indiquer que simplexml est activé via un serveur Web, alors qu’il n’est pas activé via CLI.
Avait le même problème sur AWS Linux 2, phpinfo () montre que SimpleXML est installé mais ne fonctionne pas, en dessous de cmd a résolu mon problème
Sudo yum install php-xml