我刚刚遇到了一个不寻常的问题:在 Zend 中使用 PHPUnit 测试控制器时,突然所有放置在控制器中的 var_dump() 都停止工作。在模型和测试类中,它们仍然出现,当我使用浏览器导航到指定的控制器时,所有 var_dumps 都会执行。
我在这里完全不知所措,有谁知道我该如何解决这个问题?提前致谢。
我刚刚遇到了一个不寻常的问题:在 Zend 中使用 PHPUnit 测试控制器时,突然所有放置在控制器中的 var_dump() 都停止工作。在模型和测试类中,它们仍然出现,当我使用浏览器导航到指定的控制器时,所有 var_dumps 都会执行。
我在这里完全不知所措,有谁知道我该如何解决这个问题?提前致谢。
我认为问题在于,输出是缓冲的。
您可以在控制器中执行此操作:
error_log(print_r($var, true)); // instead of var_dump
或者在你的测试用例中:
$return = $this->getFrontController()->getResponse()->getBody();
var_dump($return);
Or you can try my "extended debug" class and use dd($something);
;)
https://github.com/tomasfejfar/enhanced-dump/blob/master/fnc.php