我在使用XDebug通过NetBeans调试PHP项目时遇到了麻烦,并希望之前可能有人遇到此问题。
调试适用于所请求的php文件 - 所以如果我去远程服务器上的index.php,我可以在NetBeans中的index.php中的任何地方放置一个断点,代码就会停在那里,我可以单步执行。
问题是,所有其他文件都显示在调用堆栈上,如下所示:"file:///home/user/site_html/library/class.requestprocessor.php"
因为这是远程服务器上文件的路径,NetBeans无法解析名称,所以我可以' t逐步完成代码。它使调试几乎没用!请求的php文件,例如index.php,就像“index.php”一样,它只是NetBeans无法正确解析的所有其他文件。
我可以使用NetBeans或XDebug中的某些设置来解决此问题吗?我已经尽力浏览了NetBeans中的所有项目设置和选项,并查看了XDebug扩展的所有配置选项,但无济于事。当然有人在那之前一定有过这个问题吗?你是怎么解决的?如果你能让我知道,我将非常感激。
如果没有其他办法,在远程服务器上调试时,Eclipse PDT和XDebug的用户是否会遇到此问题?如果不是,我会进行切换。
答案 0 :(得分:1)
此问题似乎已在NetBeans 6.7中修复。
答案 1 :(得分:0)
好吧似乎没有人会回答这个问题,所以我会发布我的研究结果。
由于我无法找到使NetBeans成功调试的方法,我尝试使用Eclipse PDT和Visual Studio 2008以及VS.php扩展来解决我的问题。 Eclipse PDT设置得很糟糕,我对你在远程服务器资源管理器中指定用于FTP服务器的端口的方式不满意。我发现VS.php做了我想要的一切,它自动上传代码,并且有完美的调试,设置很简单。唯一的问题是,它看起来很难看,我无法找到一种方法来定制它的颜色。但是,我将选择功能而不是时尚,所以我决定使用VS.php作为我的最终解决方案。老实说,这是一种耻辱,NetBeans非常棒,如果没有正常工作的调试器,我就无法生存。
答案 2 :(得分:0)
我有同样的问题。我正在运行Netbeans 6.8。您必须右键单击您的项目,转到项目属性/运行配置/高级并设置路径映射。将服务器上的文件夹映射到本地文件夹,以便Netbeans知道在访问这些方法时本地打开哪些文件。