私はPHP7をテストしています、そして最近のアップデートの後に奇妙な問題を抱えています。 SimpleXMLはデフォルトで有効にされるべきです、そして私のphpinfo
ページはそれが利用可能であることを示しています:
ただし、機能は利用できません。
<?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
そしてモジュールはロードされたものとしてリストされていません:
~ $ php -m
[PHP Modules]
calendar
Core
ctype
curl
...
Reflection
session
shmop
sockets
SPL
standard
sysvmsg
sysvsem
sysvshm
tokenizer
Zend OPcache
zlib
これのための回避策があるかどうか誰でも知っていますか?
バージョン情報:
~ $ 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
私は同じ問題を抱えていて、私はUbuntu 15.10を使用しています。
私の場合は、この問題を解決するために、SimpleXmlを含むSynapticパッケージマネージャーを使用してphp7.0-xmlパッケージをインストールしました。だから、私のApacheサーバを再起動した後、私の問題は解決した。このパッケージはDebian版で提供されており、こちらから入手できます。 https://packages.debian.org/sid/php7.0-xml 。
ppa:ondrej/php
PPAでUbuntuを使用しているすべての人にとって、これは問題を解決するでしょう:
apt install php7.0-mbstring php7.0-Zip php7.0-xml
( https://launchpad.net/~ondrej/+archive/ubuntu/php を参照)
これを指摘してくれてありがとう@Alexandre Barbosa!
編集20160423:
この問題を解決するためのワンライナー:
Sudo add-apt-repository -y ppa:ondrej/php && Sudo apt update && Sudo apt install -y php7.0-mbstring php7.0-Zip php7.0-xml
(これにより上記のppaが追加され、常に最新のphpがあることも確認されます。現在2年近くOndřejのPHP ppaを使用していますが、これは魅力のように機能します)。
Ubuntu 14.04の場合
PHP 7.0.13-1 + deb.sury.org〜trusty + 1(cli)(NTS)
Sudo apt-get install php-xml
私のために働いた。
私はWindows(Ubuntu 16.04)でBashを使用していて、php7.0-xmlでインストールしたところ、Symfony 3.2.7 PHPの要件に対応しています。
Sudo apt-get install php7.0-xml
Alpine(docker)では、apk add php7-simplexml
を使用できます。
それでもうまくいかない場合は、apk add --no-cache php7-simplexml
を実行できます。これはあなたが最初にパッケージインデックスを更新していない場合のためです。
------------------セントで-------------------------
yum provides php-xml
yum install php70u-xml-7.0.14-2.ius.centos7.x86_64
通常Debianシステムでは、ApacheモジュールのようにCLIとPHPの実行に異なるPHP設定があります。あなたのphpinfoページはウェブサーバ経由で有効になっているとしてsimplexmlを表示するかもしれませんが、それはCLI経由で有効にされていません。
AWS Linux 2で同じ問題が発生した場合、phpinfo()はSimpleXMLがインストールされているが機能していないことを示します。cmd以下では私の問題は解決しました
Sudo yum install php-xml