为什么php模块没有';不知道安装了什么?

为什么php模块没有';不知道安装了什么?,php,Php,在我的服务器中,当我运行此行时: $dom = new DOMDocument; 它抛出: [Tue Jul 10 21:57:21.446136 2018] [:error] [pid 32011] [client 167.99.34.190:27323] PHP Warning: require_once(DOMDocument.php): failed to open stream: No such file or$ [Tue Jul 10 21:57:21.446181 2018]

在我的服务器中,当我运行此行时:

$dom = new DOMDocument;
它抛出:

[Tue Jul 10 21:57:21.446136 2018] [:error] [pid 32011] [client 167.99.34.190:27323] PHP Warning:  require_once(DOMDocument.php): failed to open stream: No such file or$
[Tue Jul 10 21:57:21.446181 2018] [:error] [pid 32011] [client 167.99.34.190:27323] PHP Fatal error:  require_once(): Failed opening required 'DOMDocument.php' (includ$
这意味着我必须安装
phpxml
模块

我正在使用以下命令执行此操作:

sudo apt-get install php-xml
然后:

sudo service apache2 restart

但仍然是
echo“XML:”的结果,加载了扩展名(“XML”)OK':'失踪'缺失
。为什么?如何安装它?

我通过在命令中指定确切的php版本解决了问题:

sudo apt-get install php7.0-xml
sudo service apache2 restart

您确定Apache运行的PHP版本与您安装的PHP xml扩展相同吗?另外,您的.ini文件是什么样子的?您可能需要在那里启用扩展。为了测试,请快速编写一个调用phpinfo()的脚本,并验证扩展是否已加载。另外,确保扩展名也在php.ini中(并且没有注释掉)。您是否真的在某处调用了
require\u一次(DOMDocument.php)
?您能显示完整的代码和完整的错误消息吗?@aynber:看起来像autoloader@aynber我没有
require\u once(DOMDocument.php)
任何地方。Autoloader认为它是一个类的名称,必须包含它。而这在php中是一个保留的东西。那么您是从Ondrej Sury的repo安装php的吗?如果是的话,这非常重要,还有php版本:)@N.B.我不记得我从哪个repo安装了php,我想我使用了
apt get