当我在Eclipse中调试PHP脚本时,它不会';t加载mysql扩展

当我在Eclipse中调试PHP脚本时,它不会';t加载mysql扩展,php,eclipse,ubuntu,xdebug,Php,Eclipse,Ubuntu,Xdebug,我已经在Ubuntu 10.10上安装了Eclipse和xDebug。 当我调试一些php文件作为一个页面时,效果很好。 当我尝试将其作为脚本进行调试时,我给出的消息是mysql扩展未加载。 我为PHP可执行文件设置了以下选项: 可执行路径:/usr/bin/php PHP ini文件:/etc/php5/apache2/PHP.ini SAPI类型:CLI PHP调试器:XDebug 我写了以下脚本: test.php 当我输入命令行/usr/bin/php test.php时 我给出了

我已经在Ubuntu 10.10上安装了Eclipse和xDebug。
当我调试一些php文件作为一个页面时,效果很好。
当我尝试将其作为脚本进行调试时,我给出的消息是mysql扩展未加载。
我为PHP可执行文件设置了以下选项:

  • 可执行路径:/usr/bin/php
  • PHP ini文件:/etc/php5/apache2/PHP.ini
  • SAPI类型:CLI
  • PHP调试器:XDebug
我写了以下脚本:

test.php

当我输入命令行/usr/bin/php test.php时
我给出了50个加载的模块,包括mysql和mysqli。
当我在Eclipse中将它作为一个页面进行调试时,我给出了相同的模块和xdebug。

当我在Eclipse中将其作为一个页面进行调试时,我给出了45个模块,其中包括xdebug,但没有加载mysql和mysqli。

尝试调用此处描述的函数:并查看它是否返回完全相同的路径。 在Ubuntu和Debian上,php配置被分割成许多文件。查看/etc/php5(或类似路径)


作为最后的手段,我将编写自己的配置并在eclipse php run As script配置中引用它,并确保配置包含并引用mysql扩展。

今天,在与这个问题斗争了几个小时之后,我决定手动
cat
一个.ini文件中的所有信息,并用eclipse-clean启动了eclipse。类似于以下脚本的内容可以实现此目的:

#!/bin/bash
mkdir /etc/php5/cli_eclipse
cat /etc/php5/cli/php.ini /etc/php5/conf.d/* > /etc/php5/cli_eclipse/php.ini
(显然,您可以检查dir是否已经存在,等等。但此脚本仅用于说明目的。您需要使用超级用户帐户/sudo来执行此操作)


将eclipse中的php运行时指向所创建文件的
window->preferences->php->php可执行文件
,并使用
-clean
标志重新启动eclipse一次。pdt应该创建包含所有必要信息的临时“php.ini”。

Eclipse pdt团队决定引入-n选项进行修复。所以只有来自/tmp/zend_debug/…的php.ini。。。已加载,所有其他INI文件尚未加载

这是自PDT 2.2.0 M201010110334(2010/10/11)以来引入的

有关详细信息,请参阅以下链接:


我在ubuntu 10.4中遇到了同样的问题。PHP5.3.5和Eclipse3.6.2。我发现了一个类似的问题,特别是关于eclipse插件Makegood的问题,但对于eclipse来说没有任何问题。调试和运行模式具有相同的问题您可以在“已安装的PHPs”的“php可执行文件”选项卡中将/etc/php5/cli_eclipse/php.ini定义为“php ini文件(可选)”。至少是Eclipse的氧气版本