Eclipse PDT - 如何调试$ _SESSION,$ _GET,$ _POST变量

时间:2010-05-25 13:49:28

标签: php eclipse debugging eclipse-pdt

我正在使用Eclipse PDT逐步完成代码。当我将鼠标悬停在数组上时,它表示例如“$ _SESSION = Array [0]”,但不会显示数据。

这对于本地变量很好,因为我可以在“变量”窗口中看到它们,但这意味着我看不到$ _GET,$ _POST,$ _SESSION的内容。

我该如何解决这个问题?

5 个答案:

答案 0 :(得分:1)

假设您使用的是xdebug。

如果您查看“变量”窗口,它还会列出您提到的那些超全局数组(_SESSION,_POST,...)。如果您没有看到它们,请尝试升级xdebug。对于这个区域(调试期间的变量),我发现它真的很麻烦。

答案 1 :(得分:1)

在编辑器中,当我在调试会话期间右键单击变量名称时,菜单中会有“Inspect”和“Watch”选项。

我花了一些时间才发现要启用这些选项,我必须在右键单击之前在编辑器中选择变量名称。您也可以按Ctrl + Shift + I进行“检查”。

“Inspect”打开一个包含可扩展变量内容的内容辅助窗口。

“Watch”会将变量添加到“表达式”视图中。

“变量”视图包含调试上下文中具有可扩展内容的所有变量。

对于数组和对象变量,使用浓缩的json式单行显示格式可以一目了然地查看复杂变量的内容,但我还没有找到办法。

我目前正在使用Eclipse 3.6 Helios SR1,Xdebug 2.1.0,PHP 5.3.0,Wamp服务器

答案 2 :(得分:0)

每个阵列左侧都有一个小箭头。单击此按钮可展开列表以显示值。

答案 3 :(得分:0)

我没有在变量视图中看到变量,而是在“表达式”视图中看到它们。

答案 4 :(得分:0)

这是XDebug配置设置问题。

要解决: 转到调试配置 - >选择您的调试配置 - >点击'调试程序'标签 - >点击'配置'以获取服务器调试程序

在此配置窗口中,有一个“ 在变量视图中显示超级全局 ”选项。确保启用此配置选项,因为$ _POST数组是PHP固有的超全局变量之一。

现在,当您运行调试会话时,所有超级全局变量都将在“变量”窗口中可用。这包括$ _POST,$ _GET,$ _COOKIE等。