我正在尝试使用CakePHP让Xdebug在PhpStorm中工作。调试器按预期停在我的断点处,但是当我单步执行代码时,它最终会崩溃。 (注意:只有在我放置断点并逐步执行代码时才会发生崩溃。)
我正在开发一台开发机器:
根据我设置断点的位置,崩溃发生在不同的地方,但我注意到它似乎总是追溯到__debuginfo()中的代码。我读过Xdebug和__debuginfo()的一些问题,但我知道它们已在Xdebug 2.3.3中修复。
这是一个例子:我仅使用CakePHP书签样本创建了一个项目。我在〜/ bookmarker / webroot / index.php中放置了一个断点,在调试器点击我的断点后,我逐步完成了index.php中的代码。
这是错误消息:
错误:无法访问受保护的属性Cake \ Event \ EventManager :: $ _ listeners 文件/ home / mriley / Webdev的/书签用/供应商/ CakePHP的/ CakePHP的/ src目录/事件/ EventManager.php 行:454
这是EventManager中的方法:
449: public function __debugInfo()
450: {
451: $properties = get_object_vars($this);
452: $properties['_generalManager'] = '(object) EventManager';
453: $properties['_listeners'] = [];
454: foreach ($this->_listeners as $key => $listeners) {
455: $properties['_listeners'][$key] = count($listeners) . ' listener(s)';
456: }
457: return $properties;
458: }
我正在做错的任何想法?