首页 文章

PHP警告:PHP启动:无法加载动态库

提问于
浏览
8

当我运行此命令时 php -v
出现此错误:

PHP警告:PHP启动:无法加载动态库'/usr/lib/php/20160303/dom.so' - /usr/lib/php/20160303/dom.so:unknown symbol:php_libxml_node_free_list in Unknown on line 0 PHP警告:PHP启动:无法加载动态库'/usr/lib/php/20160303/xmlreader.so' - /usr/lib/php/20160303/xmlreader.so:未定义符号:dom_node_class_entry in Unknown on line 0 PHP警告: PHP启动:无法加载动态库'/usr/lib/php/20160303/xsl.so' - /usr/lib/php/20160303/xsl.so:unknown symbol:dom_node_class_entry in Unknown on line 0 PHP 7.1.5- 1 deb.sury.org~trusty 2(cli)(建于2017年5月22日13:39:01)(NTS)版权所有(c)1997-2017 PHP Group Zend Engine v3.1.0,版权所有(c)1998-2017 Zend技术与Zend OPcache v7.1.7-1 ubuntu14.04.1 deb.sury.org 1,版权所有(c)1999-2017,作者:Zend Technologies

5 回答

  • 0

    安全的解决方案是重新安装所有与php7相关的软件包 .

    只需在控制台中输入以下命令即可完成此操作:

    sudo apt-get install --reinstall `dpkg -l | grep 'ii  php7' | awk '{ printf($2" "); next}'`
    

    此解决方案将保持您的配置不变

  • 61

    (在ubuntu 14.04或以上)

    sudo apt-get install libapache2-mod-php7.0 libphp7.0-embed libssl-dev openssl php7.0-cgi php7.0-cli php7.0-common php7.0-dev php7.0-fpm php7.0 -phpdbg

    参考:

    https://gnh1201.wordpress.com/2017/07/24/php-7-0-undefined-symbol-php_libxml_node_free_list/

  • 2

    我在Linux更新后发现xml几乎同样的问题(和PHP 7.0 - > 7.1) .

    我的解决方案非常简单:

    sudo apt install php7.1-xml
    
  • 8

    我遇到了同样的错误 . 报告丢失的文件存在,文件权限对我来说没问题,并且使用正确的用户和组执行PHP .

    对我来说,它有助于删除所有PHP软件包并重新开始 .

    • 以下命令应该在Debian / Ubuntu系统上 remove all PHP packagesincluding the PHP config - 之前进行备份):
    sudo aptitude purge `dpkg -l | grep php| awk '{print $2}' |tr "\n" " "`
    

    资料来源:https://askubuntu.com/a/187278

    • 检查PHP是否被删除:
    php -v
    

    这应该返回类似“未找到命令:php”的内容 .

    • 然后,再次安装PHP,例如:
    sudo apt-get install php7.1 php7.1-xml php7.1-fpm php7.1-json
    
  • -1

    在我的情况下,一些PHP软件包没有升级,所以我只需要执行dist-upgrade:

    sudo apt-get dist-upgrade
    

相关问题