JP *_*Lew 19 php debugging xdebug visual-studio-code
我将 Visual Studio Code 1.16.1 与 Felix Becker 的PHP Debug 扩展一起使用。我连接到 XDebug 就好了,可以在调试窗格中设置断点和查看变量,没有任何问题。
但是,调试控制台似乎没什么用,我只能运行超级基本的 PHP 命令,而且我似乎无法评估正常的 PHP 命令或与我的应用程序很好地交互。
error evaluating code
尝试在调试控制台中键入任何 PHP 语句或表达式时,我始终如一。似乎我所能做的就是声明变量、数组和对象。
我不能声明的类,函数,使用控制结构(if
,foreach
等)。
作品:
$x = 4
//4
$x
//4
$x = new stdClass();
//stdClass
$x = [];
//array(0)
($x) ? yes : no
// yes
(!$x) ? yes : no
// no
preg_replace('/dog/', 'cat', 'The quick brown fox jumps over the lazy dog.')
// "The quick brown fox jumps over the lazy cat."
request()
//Illuminate\Http\Request (Laravel helper methods work)
Run Code Online (Sandbox Code Playgroud)
不起作用:
echo "yes"
//error evaluating code
if ($x == 4) { echo "yes" }
//error evaluating code
for ($i=0; $i < 5; $i++) { }
//error evaluating code
function foo() {}
//error evaluating code
class SimpleClass {}
//error evaluating code
$var_dump($x)
//null
Run Code Online (Sandbox Code Playgroud)
调试控制台应该像真正的 REPL 一样工作吗?我知道 PHPStorm 的控制台可以评估您扔给它的任何 PHP,Visual Studio Code 也可以这样做吗?还有其他人面临这个问题吗?
谢谢。
TL;博士; 这是一个与 XDebug 相关的问题,与 OP 的扩展无关,取消监视变量可能会修复 XDebug 行为。
该问题与 OP 的扩展无关,而是与 XDebug 相关的问题。
许多人通过在调试视图中从 VSCode 的“监视”列表中删除变量来解决此问题。
在下面的屏幕截图中,红色箭头表示一个按钮,您可以单击一次删除所有监视表达式:
另请参阅:github.com/xdebug/vscode-php-debug/issues/192
归档时间: |
|
查看次数: |
3227 次 |
最近记录: |