Xdebug 分析器不工作?

2022-08-30 17:36:16

我使用XAMPP,并且我已经对其进行了配置,以便为我创建的每个本地项目提供虚拟主机。

在我的php中.ini我已经启用了xdebug,我的脚本工作正常。我的意思是,任何时候有警告,通知,错误,都是由xdebug报告的。

现在我想启用Xdebug探查器,并且我已经对我的php进行了以下更改.ini,以便允许Xdebug探查器生成日志文件:

; xdebug.profiler_enable
; Type: integer, Default value: 0
; Enables Xdebugs profiler which creates files in the profile output directory. Those files can be
; read by KCacheGrind to visualize your data. This setting can not be set in your script with ini_set
; ().
xdebug.profiler_enable = 1

; xdebug.profiler_output_dir
; Type: string, Default value: /tmp
; The directory where the profiler output will be written to, make sure that the user who the PHP
; will be running as has write permissions to that directory. This setting can not be set in your
; script with ini_set().
xdebug.profiler_output_dir ="D:\Web Development Projects\Profile"

我重新启动了我的Apache,但是当我运行脚本时,文件夹中仍然没有生成任何文件。

我还需要做些什么吗?

我已经阅读了,以便启用探查器:http://xdebug.org/docs/profiler


经过一些研究,我在索引的末尾添加了该代码.php在我的服务器中的WordPress安装中:

echo xdebug_get_profiler_filename();

在我运行WordPress之后,在页脚处我得到这个结果:

D:/Web Development Projects/Profile/xdebug_profile._::1320916508_018294

但是当我转到文件夹时

D:/Web Development Projects/Profile/

文件没有出现在那里?任何想法?


答案 1

首先,您需要确保运行 Web 服务器的用户实际上具有对您指定的目录的写入权限,并且它需要存在。也有可能Xdebug不喜欢路径中的空格,尽管这应该可以正常工作,但我会尝试设置:

xdebug.profiler_output_dir = "D:/Web Development Projects/Profiler"

因为 \ + char 可能是转义序列。


答案 2

问题解决了!

由于日志文件名而生成的问题。

我只是把它改成了:

xdebug.profiler_output_name = "callgrind.out.%t-%s"

并正常工作!


推荐