封绝的世界

使用 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安装一遍。
vi /etc/php/7.2/mods-available/xdebug.ini
 
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是否真实变更。
 如果没有profiler文件生成,检查output_dir文件夹是否有写入权限,或者将文件夹路径改为项目文件夹内部。
官网的升级文档地址https://xdebug.org/docs/upgrade_guide
 

使用工具来分析 profiler 文件

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

Tools > Analyze Xdebug Profiler Snapshot

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

 

posted @ 2021-05-29 13:44  天边的云云  阅读(377)  评论(0编辑  收藏  举报