我在Magento应用程序的某一页上发现了一个错误;它总是显示这个消息错误时,我访问它:

致命错误:在/home/……/lib/ zend / feed / abstract .php第95行中找不到类“DOMDocument”

你能给我一个解决办法吗?我使用的是magento 1.4.1.1。


当前回答

在我的情况下,问题是它是在php文件顶部的名称空间的使用,例如:

namespace MediaWiki\Extensions\ParserFunctions;

要解决这个问题,添加以下行:

use DOMDocument;

因此,如果已经安装了dom或xml,则不需要安装它们。这是一个php语言陷阱。

其他回答

安装DOM扩展。

Debian / Ubuntu:

sudo apt-get update
sudo apt-get install php7.4-xml
sudo service apache2 restart

Centos / Fedora / Red Hat:

yum update
yum install php74w-xml
systemctl restart httpd

对于以前的PHP版本,请替换为您的版本。

这有助于我(Ubuntu Linux) PHP 5.6.3

Sudo apt-get install php5.6-dom

这对我很有用。

经过很长一段时间的痛苦,在PHPunit…

对于那些使用命名空间(这在框架或CMS中非常常见)的人来说,除了查看php-xml是否安装并处于活动状态外,还有一个很好的检查,就是记住在命名空间之后声明DOMDocument:

namespace YourNameSpace\YourNameSpace;

use DOMDocument; //<--- here, check this!

如果使用——disable-all从源代码编译,那么可以使用——disable-all启用DOMDocument支持 ——enable-dom

例子:

./configure --disable-all --enable-dom

测试并适用于Centos7和PHP7

PHP 7。X Centos 7

当我尝试使用上述建议安装模块时,我遇到了依赖关系问题,添加了这个标志:

--enablerepo=remi-php7X

解决依赖关系。

So

sudo yum——enablerepo=remi-php7X install php-xml

Then

服务HTTPD重启

裁判: 安装PHP模块