Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 流程3调试_Php_Aop_Typo3 Flow - Fatal编程技术网

Php 流程3调试

Php 流程3调试,php,aop,typo3-flow,Php,Aop,Typo3 Flow,我目前正在为一个即将到来的项目评估Flow3。AOP模式和依赖项注入对于我们的目的来说非常理想 现在我搞不懂的是如何调试控制器操作中的一些结果 public function testAction() { $beans = $this->coffeeBeanRepository->findAll(); var_dump($beans); // doesn't work, browser crashes } 我所尝试的: 使用PHPStorm和XDEBUG进行调试(

我目前正在为一个即将到来的项目评估Flow3。AOP模式和依赖项注入对于我们的目的来说非常理想

现在我搞不懂的是如何调试控制器操作中的一些结果

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

  • 使用PHPStorm和XDEBUG进行调试(我通常就是这样做的)
  • 变量转储/打印\r/打印

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

\类型3\FLOW3\var\u dump()


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

xdebug并没有那么棘手,您的缓存PHP文件必须用于调试目的,如果您需要调试MyController,在缓存目录中搜索MyController_原件,并将断点放在此文件中

您还可以使用debugproxy.php改进xDebug与Flow的使用:

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

\TYPO3\Flow\var_dump('test');

走!AOP PHP库具有调试模式,允许将XDebug与原始类和方面一起使用,只需在原始源代码中设置断点。在Go中调试带有方面的代码非常简单!)