gpt4 book ai didi

Eclipse PDT 调试设置 (XDebug/Zend)

转载 作者:行者123 更新时间:2023-12-04 16:45:32 24 4
gpt4 key购买 nike

让 Eclipse 调试我的 CakePHP 应用程序让我费了好大的劲。我试过阅读几个教程(都不是那么好)。我试过同时使用 Zend 和 XDebug。

我什至不确定在正确设置后我应该如何使用它。

我尝试在我的 PHP 代码中设置一个断点,在文本编辑器中右键单击 PHP 文件,然后选择“调试 PHP Web 应用程序”,但它从未达到断点。它在 eclipse 中打开一个浏览器,其中一些 GET 参数附加到我的正常 URL:

?debug_host=192.168.1.2%2C127.0.0.1&start_debug=1&debug_port=10000&original_url=http%3A%2F%2Flocalhost%2Fparticipants&send_sess_end=1&debug_stop=1&debug_start_session=1&debug_no_cache=1331422177353&debug_session_id=1000

在我的项目 php 调试属性中,我不确定的一件事是 PHP 可执行字段。它被自动设置为“无”,所以我必须创建一个指向“/usr/bin/php”的条目。也许这不正确?

我什至用一个只有几个 echo 语句的 php 文件创建了一个简单的应用程序。我也无法让调试器在其中命中断点。

这是我的 phpinfo(): https://sites.google.com/site/kylephpinfo/phpinfo.html?attredirects=0&d=1

在我的生活中,调试器工作从来没有遇到过这么大的麻烦..

最佳答案

从您的 php.ini 来看,调试器扩展没有加载。它通常显示在第一个框的正下方,例如 with Xdebug v2.1.0, Copyright (c) 2002-2008, by Derick Rethans...

因此,您需要确保的第一件事是正确设置了服务器的 PHP ini。找到 httpd.conf 指向的 php.ini,并编辑它以包含如下内容:

zend_extension_ts=C:\php\ext\php_xdebug-2.1.0-5.3.0.dll
xdebug.remote_enable=1
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.remote_handler="dbgp"

注意事项:

  • ts 表示线程安全,因此请确保您为调试器获取的包也是 ts
  • Linux/Mac 中的设置非常相似,并且带有 .so 调试器扩展名。
  • 最简单的方法可能是设置像 XAMPP 这样的服务器,它提供兼容的调试器扩展。

一旦开始运行,并且 php.info 显示已加载 xdebug(或 Zend Debugger),您就可以开始了。

如果您的服务器在您的本地机器上,最简单的方法是在 htdocs 中创建您的项目。当调试器试图解决断点时,以及当 PDT 试图解决要打开的正确文件时,这将防止源代码查找出现任何问题。(您可以操作 路径映射 设置,但这将为您省去麻烦)。

不要被 PHP 可执行调试(PHP 脚本调试器)搞糊涂了。您需要运行远程调试(即使它在同一台机器上)。 PHP 脚本仅适用于简单的 PHP 脚本,按原样运行(不在服务器上,像 CLI)。

希望这能帮助您入门! :)

更新:在 Php 5.3 之后不需要使用 zend_extension_ts,而是像 Php.net 上提到的那样只使用 zend_extension http://php.net/manual/en/ini.core.php#ini.zend-extension

关于Eclipse PDT 调试设置 (XDebug/Zend),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9651658/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com