PHP 代码可在命令行运行但无法调试
PHP code works command line but cannot debug
我正在使用 PHP 客户端代码,其中包含 Symfony dom-crawler(通过 composer 添加)。当从命令行 运行 时效果很好;但是,在调试时它会崩溃并出现以下错误:
PHP Fatal error: Uncaught Error: Class 'DOMDocument' not found in /home/jeff/newproject/vendor/symfony/dom-crawler/Crawler.php:189
我在 Ubuntu 上使用 PHP 7.1、Eclipse、Xdebug。我也遇到了与另一个依赖项相同的问题,所以我怀疑它与 Eclipse/Xdebug 相关。
知道从哪里开始寻找吗?
更新:我确保 php-xml 是最新版本:
$ sudo apt-get install php7.1-xml
Reading package lists... Done
Building dependency tree
Reading state information... Done
php7.1-xml is already the newest version (7.1.13-1+ubuntu16.04.1+deb.sury.org+1).
0 upgraded, 0 newly installed, 0 to remove and 41 not upgraded.
在 Linux(和 OSX)上确保您在 eclipse php 配置上检查了 "Use system default php.ini configuration"。没有这个来自 /etc/php-version/conf.d/*.ini 的文件将不会被加载,因此 XML 也将不可用。
我正在使用 PHP 客户端代码,其中包含 Symfony dom-crawler(通过 composer 添加)。当从命令行 运行 时效果很好;但是,在调试时它会崩溃并出现以下错误:
PHP Fatal error: Uncaught Error: Class 'DOMDocument' not found in /home/jeff/newproject/vendor/symfony/dom-crawler/Crawler.php:189
我在 Ubuntu 上使用 PHP 7.1、Eclipse、Xdebug。我也遇到了与另一个依赖项相同的问题,所以我怀疑它与 Eclipse/Xdebug 相关。
知道从哪里开始寻找吗?
更新:我确保 php-xml 是最新版本:
$ sudo apt-get install php7.1-xml
Reading package lists... Done
Building dependency tree
Reading state information... Done
php7.1-xml is already the newest version (7.1.13-1+ubuntu16.04.1+deb.sury.org+1).
0 upgraded, 0 newly installed, 0 to remove and 41 not upgraded.
在 Linux(和 OSX)上确保您在 eclipse php 配置上检查了 "Use system default php.ini configuration"。没有这个来自 /etc/php-version/conf.d/*.ini 的文件将不会被加载,因此 XML 也将不可用。