使用 Xdebug 生成 php 的 Profiler

Posted 贽殿遮那

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用 Xdebug 生成 php 的 Profiler相关的知识,希望对你有一定的参考价值。

在上一讲我们成功配置了xdebug并可以成功调试代码。ubuntu中PHP xdebug 断点调试
 
我切换Xdebug 升级到3.x版本后的配置修改,这里我们介绍php在ubuntu的版本切换的命令。
sudo a2enmod php5.6
sudo a2dismod php7.2
sudo update-alternatives --set php /usr/bin/php7.2
sudo systemctl restart apache2
 
然后把php7.2相对应的扩展再apt-get安装一遍。
 
xdebug.client_port= 9000
xdebug.output_dir=/var/tmp/xdebug
xdebug.idekey=PHPSTORM
xdebug.mode = develop,debug,profile,trace
xdebug.profiler_append = 0
xdebug.profiler_output_name = cachegrind.out.%p
xdebug.start_with_request = default|yes|trigger|yes
 
xdebug3默认端口9000改为9003,为了和以前统一我们把它改回来,和各种文件输出路径更改,关键的idekey设置,打开所有的xdebug模式和其对应的request配置。不要忘记重启服务和观察phpinfo是否真实变更。
 
官网的升级文档地址https://xdebug.org/docs/upgrade_guide
 

使用工具来分析 profiler 文件

这里我使用 phpstorm 的分析工具来查看

Tools > Analyze Xdebug Profiler Snapshot

选择生成的 输出文件, 可以看到文件的解析信息, 这个对于分析自己写的php代码会有很大益处

以上是关于使用 Xdebug 生成 php 的 Profiler的主要内容,如果未能解决你的问题,请参考以下文章

kcachegrind 难以链接 php xdebug 调用

在 Gitlab CI 上更改 Xdebug 模式 PHP Docker

设置调试工具XDebug PHPStorm IDE

PHP 设置调试工具XDebug PHPStorm IDE

PHP代码覆盖率

php调试工具xdebug的使用windows