Php 如何调试上下文的最后一行?

Php 如何调试上下文的最后一行?,php,phpstorm,xdebug,Php,Phpstorm,Xdebug,当我在上下文的最后一行设置断点时,它会在我得到返回值之前跳转 例如,如果我有一个函数,如: function SomeFunc(){ // some stuff going on $value = ThisReturnsAValue(); // breakpoint set on this line } 在它跳出上下文之前,我无法看到$value的值 我发现自己正在做的是添加另一个变量,这样我可以在返回值后中断,如下所示: function SomeFunc(){

当我在上下文的最后一行设置断点时,它会在我得到返回值之前跳转

例如,如果我有一个函数,如:

function SomeFunc(){

    // some stuff going on

    $value = ThisReturnsAValue();  // breakpoint set on this line
}
在它跳出上下文之前,我无法看到
$value
的值

我发现自己正在做的是添加另一个变量,这样我可以在返回值后中断,如下所示:

function SomeFunc(){

    // some stuff going on

    $value = ThisReturnsAValue();  
    $foo = '';  // breakpoint now set on this line
}
然后可以在我的手表中查看
$value

这感觉不对。在离开上下文之前,是否有一个选项来评估最后一行


(我使用的是PHPStorm&Xdebug)

没有解决这个问题的方法。我也在做同样的事情

我甚至在做这样的事情:

$return = $this->doStuff();
return $return;
只是为了在返回之前查看返回值

IntelliJ中有设置不同类型断点的选项,但在PHPStorm/for PHP中不可用。我的猜测是由于XDebug的局限性,或者他们还没有找到解决办法


在此之前,通过使用
条件断点
,您可能会更接近您想要的。只需将断点设置为正常,右键单击红色项目符号并添加条件。现在,当条件不满足时,它将愉快地继续。

将断点设置为最后一个}。大多数调试器都支持这一点(NetBeans支持)