2

我目前正在为即将到来的项目评估 Flow3。AOP 模式和依赖注入将非常适合我们的目的。

现在我想不通的是如何在控制器动作中调试一些结果。

public function testAction() {
    $beans = $this->coffeeBeanRepository->findAll();
    var_dump($beans); // doesn't work, browser crashes
}

我试过的:

  • 使用 PHPStorm 和 XDEBUG 进行调试(这是我通常的做法)
  • var_dump / print_r / 打印
4

3 回答 3

3

您想使用 FLOW3 的 var_dump,它处理来自深度嵌套对象的一些递归并导致浏览器缓存:

\TYPO3\FLOW3\var_dump()

XDebug 在 FLOW3 中可能很棘手,因为 FLOW3 为您的类创建代理类以使所有 AOP 魔术发生。尽管如此,我知道这里的开发人员在他们的 FLOW3 项目中成功地在 PHPStorm 中使用了 xdebug_break(),所以这绝对是可行的。

于 2012-07-03T16:47:34.377 回答
0

Xdebug 不是那么棘手,你缓存的 PHP 文件必须用于调试目的,如果你需要调试 MyController,在缓存目录中搜索一个 MyController_Original 并将你的断点放在这个文件中。

您还可以使用 debugproxy.php 来改进 xDebug with Flow 的使用: https ://github.com/sandstorm/debugproxy

于 2012-10-14T03:11:11.643 回答
0

在最新版本的 Typo3 Flow 中,您必须使用:

\TYPO3\Flow\var_dump('test');
于 2015-03-18T16:26:37.503 回答