使用eclipse和xdebug进行调试不会超过第一行

时间:2013-04-10 00:14:05

标签: php eclipse codeigniter xdebug eclipse-pdt

是的,我尝试在StackOverflow和Google上搜索我的问题。如果您阅读完整个问题,您会看到我在上面找到的答案中包含很多链接。

我一直在努力让XDebug使用Eclipse的Juno Service Release 2大约过去一个半小时,我正在查看问题日志。我已经通过使用堆栈溢出和Google解决了我的大部分问题。

我首先按照here步骤安装调试器。

我确保将调试器添加为this帖子中提到的zend_extension。

以下是我的php.ini文件中的相关行

zend_extension="/Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/xdebug.so"
xdebug.collect_params=4
xdebug.var_display_max_depth=999
xdebug.dump.POST=*
xdebug.dump.GET=*
xdebug.show_local_vars=1

我确保编辑了MAMP附带的5.3版本php的php.ini文件。此时,即使XDebug在我运行php -v时出现,调试器也会启动。

由于我仍然遇到问题,我检查了日志,就像有人here一样。我在日志中发现了这个错误:

PHP Fatal error:  Class 'Model' not found in ...

在检查documentation以获取最新版本的CodeIgniter后,我注意到所有模型都必须扩展CI_Model而不是模型。

我解决了这个错误,不再将错误打印到日志中,但现在事情就不起作用了。当我尝试调试文件时,调试器不会超过第一行。

我正在尝试将我的php应用程序调试为PHP CLI应用程序。当我尝试将应用程序调试为PHP Web应用程序时,我收到一条错误消息:

No tab group defined for launch configuration type org.eclipse.php.debug.core.launching.webPageLaunch

问题发生后Googling,我发现了this帖子,提示you might not be able to do我正在尝试做什么。自2009年首次提出问题以来,我决定尝试第二个建议,并检查是否有任何更新。

更新了所有Eclipse插件后,我仍然遇到同样的问题。在搜索了更多内容之后,我看到this人刚刚放弃并尝试使用NetBeans并使一切工作正常。

我应该只考虑过去的1.5 - 2小时作为沉没成本,然后转移到另一个IDE?

3 个答案:

答案 0 :(得分:1)

我也遇到了让XDebug与Eclipse和XAMPP一起工作的问题。最后,我决定选择Netbeans,设置得更顺畅。我仍在使用Netbeans来进行所有PHP开发。

答案 1 :(得分:0)

您的Php CLI可能会选择错误的php.ini文件?

请到终端并检查加载了哪个ini文件:

php --ini

并确保其中所需的一个。

答案 2 :(得分:0)

jerrod.taylor,

开始使用PHP,Xdebug和Eclipse时遇到了很多问题。我自己考虑过改变IDE,但我喜欢挑战,并在网上找到了很多帮助。我会尽力为您提供一些帮助您的建议。

首先,这是我在php.ini中的参数:

zend_extension="/usr/lib/php/extensions/no-debug-non-zts-20090626/xdebug.so"
xdebug.remote_enable=On
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9060
xdebug.remote_handler="dbgp"
xdebug.remote_autostart=On

我使用本地计算机作为远程主机。适应你的世界。此配置适用于CLI和Web调试。我真的不确定它们中的一些是否适用于不同类型的调试。所以,让我们从所有这些开始。

现在,确保支持xdebug。运行以下命令,查看是否存在不良内容。

php -i|grep xdebug

没有,让我们去Eclipse。在Eclipse首选项中添加相应的PHP可执行文件,并确保debuger类型为Xdebug。可以通过Preferences-> PHP-> PHP可执行文件导航完成此步骤。如果您添加项目,则表格中会要求您提供以下信息:

Name : Choose one
Executable Path : the_path_to_php_exe
PHP Ini file : you can leave it blank
SAPI type : CLI
PHP debugger : Xdebug

这一步很重要。我们将如何告诉eclipse使用可执行文件。

现在,我们添加一个调试配置。我在我的工作区中有一个名为upload的项目,并且在该项目中存在一个文件index.php。要创建调试配置,请在选择“PHP CLI Application”时单击新建。它将为您添加一个新的配置表单。对于我的Debug配置,我有以下信息:

Tab PHP Script


Run Time PHP
   Alternat PHP: (Select the PHP executable you have created above)
PHP File : /upload/index.php
Break Point : Break at first line is selected

此步骤应足以解决您的问题。让我们知道它是怎么回事。