我在Laravel 4.2 Homestead Vagrant框和PHPStorm8 EAP 138.1751上使用PHP 5.5.12上的Xdebug 2.2.5。
在大多数文件中,我可以设置断点并且它可以正常工作。
Controller \ Manage \ DashboardController扩展Controller \ Manage \ BaseManageController扩展Controller \ BaseController extends \ Controller。
它不会打破DashboardController中的任何内容,我无法弄清楚原因。
我试图打破方法索引(),但它不会。如果我将index()移动到BaseController,那么它将在其中中断。此外,如果我打破在我的控制器中调用操作的方法,并手动插入它,它只是跳过它(可能已经发誓至少曾经工作过一次,但现在还没有。)
知道是什么原因引起的吗?
这是我的xdebug配置:
[xdebug]
xdebug.remote_enable = 1
xdebug.remote_connect_back = 1
xdebug.remote_port = 9000
xdebug.scream=1
xdebug.cli_color=1
xdebug.show_local_vars=0
xdebug.remote_handler = dbgp
xdebug.auto_trace = 1
xdebug.var_display_max_depth=10
xdebug.var_display_max_children=512
xdebug.var_display_max_data=1024
答案 0 :(得分:1)
原来是文件夹名称的大写问题......
我有DashboardController: ./controller/manage/DashboardController
PSR4加载程序中的命名空间定义了控制器目录,因此没问题。
"管理"目录是问题,它需要是"管理"
有点奇怪,因为它仍然加载并运行文件,但xdebug必须更加挑剔,它会在哪里找到文件,所以它不会在该文件夹中的任何内容。
答案 1 :(得分:0)
您的代码可能没有被执行,因此断点无法到达。