我可以在 xdebug 探查器上手动说在特定位置开始分析吗?
我已经在我的 XAMPP 安装中启用了 xDebug 分析,它工作正常。
现在我想问一下,是否有办法从我的源代码中说出何时开始使用xDebug进行分析。
更具体地说,我想创建一个WordPress插件,我想说,从插件的起点开始分析,并在插件的终点停止分析。
这可能吗?
注意:以上只是一个例子。它可以是 CakePHP 插件,也可以是我可能需要分析的新 PHP 类。
我已经在我的 XAMPP 安装中启用了 xDebug 分析,它工作正常。
现在我想问一下,是否有办法从我的源代码中说出何时开始使用xDebug进行分析。
更具体地说,我想创建一个WordPress插件,我想说,从插件的起点开始分析,并在插件的终点停止分析。
这可能吗?
注意:以上只是一个例子。它可以是 CakePHP 插件,也可以是我可能需要分析的新 PHP 类。
编辑:根据如何在运行时打开/关闭Xdebug分析?您实际上无法在运行时启用/禁用(例如,每个函数调用)。
您可以有选择地为每个请求启用探查器,这通常更好。要实现此行为,请设置以下设置:
对于 xdebug 3(升级指南):
xdebug.mode = profile;
xdebug.start_with_request = trigger;
对于 xdebug 2:
xdebug.profiler_enable_trigger=1
xdebug.profiler_enable=0
请注意,我们禁用探查器,只启用触发器。从浏览器传递XDEBUG_PROFILE= 1
http://example.com/file.php?XDEBUG_PROFILE=1
您也可以在 POST 或 COOKIE 中传递此参数。有关更多信息,请查看
正如Laith所说,你不能选择什么时候想让xDebug开始分析,什么时候想让他停止。但是,另一个xDebug功能提供了这种灵活性:跟踪。
分析和跟踪并不完全相同,但是,如果您最终到达此处,则跟踪可能适合您的需求。
若要开始跟踪,必须使用以下函数:xdebug_start_trace()
若要停止跟踪,必须使用以下函数:xdebug_stop_trace()
有很多设置可用于更改跟踪的行为: