我在Magento应用程序的某一页上发现了一个错误;它总是显示这个消息错误时,我访问它:
致命错误:在/home/……/lib/ zend / feed / abstract .php第95行中找不到类“DOMDocument”
你能给我一个解决办法吗?我使用的是magento 1.4.1.1。
我在Magento应用程序的某一页上发现了一个错误;它总是显示这个消息错误时,我访问它:
致命错误:在/home/……/lib/ zend / feed / abstract .php第95行中找不到类“DOMDocument”
你能给我一个解决办法吗?我使用的是magento 1.4.1.1。
当前回答
这是PHP v 8.0的最新版本
sudo apt-get install php8.0-xml
其他回答
Package php-dom is a virtual package provided by:
php7.1-xml 7.1.3+-3+deb.sury.org~xenial+1
php7.0-xml 7.0.17-3+deb.sury.org~xenial+1
php5.6-xml 5.6.30-9+deb.sury.org~xenial+1
You should explicitly select one to install.
如果有人使用5.6版本,那么就采用这种方式
sudo apt-get install php5.6-xml
对于PHP7, Ubuntu:
sudo apt-get install php7.1-xml
或通过
yum install php-xml
经过很长一段时间的痛苦,在PHPunit…
对于那些使用命名空间(这在框架或CMS中非常常见)的人来说,除了查看php-xml是否安装并处于活动状态外,还有一个很好的检查,就是记住在命名空间之后声明DOMDocument:
namespace YourNameSpace\YourNameSpace;
use DOMDocument; //<--- here, check this!
创建一个空的PHP文件,只放<?php phpinfo ();在浏览器中查看它。 检查你是否能在配置选项中发现——disable-dom和/或你是否能在下面的列表中看到关于DOM扩展的详细信息。
如果您在列表中看不到DOM,或者您看到它被禁用,那么您的PHP安装不包括DOM扩展。为了解决这个问题,您需要从源代码重新编译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版本,请替换为您的版本。
在我的情况下,问题是它是在php文件顶部的名称空间的使用,例如:
namespace MediaWiki\Extensions\ParserFunctions;
要解决这个问题,添加以下行:
use DOMDocument;
因此,如果已经安装了dom或xml,则不需要安装它们。这是一个php语言陷阱。