使用PHPStorm + Xdebug + Firefox 单步调试PHP并分析代码性能

工欲善其事必先利其器。如果你想看懂框架,如果你想快速找到代码中的疑难问题,你首先要学会单步调试跟踪代码。
之前一直都是使用zendstudio + zend debugger + Firefox调试PHP的,。可是zend debugger在windows下不支持高版本的PHP(好像是可以支持到5.2),后来开始使用phpstorm和xdebug调试。

安装PhpStorm

官方地址:https://www.jetbrains.com/phpstorm/
PhpStorm使用手册:https://confluence.jetbrains.com/display/PhpStorm/Tutorials

安装PHP Xdebug扩展

xdebug官网:
https://xdebug.org/
扩展下载地址:
http://pecl.php.net/package/xdebug
https://xdebug.org/download.php
如果你不能确定你需要下载哪个版本的扩展,你可以借助xdebug官方提供的工具,输入phpinfo即可获取需要下载的版本。
https://xdebug.org/wizard.php

修改PHP配置文件 php.ini

[Xdebug]
zend_extension=C:\webserver\server\php-5.6.9\ext\php_xdebug-2.3.3-5.6-vc11-x86_64.dll
;允许远程IDE调试
xdebug.remote_enable=on
;远程IDE所在HOST和PORT
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
;开启远程调试自动启动
xdebug.remote_autostart = Off

;可以是任意Key,这里设定为PHPSTORM
xdebug.idekey = "PHPSTORM"

;开启自动跟踪
xdebug.auto_trace = On
xdebug.trace_output_dir="C:\webserver\xdebug"

;把执行情况的分析文件写入到指定目录中
xdebug.profiler_enable=on
xdebug.profiler_output_dir="C:\webserver\xdebug"

这里你可以看到所有配置项的解释:
https://xdebug.org/docs/all_settings

输出phpinfo看下扩展是否安装成功。

配置PHPStorm

Ctrl+Alt+S 调出配置界面,输入xdebug搜索配置位置。
注意端口号是否和php.ini中设置的一致,默认为9000。

配置DBGP Proxy

安装firefox 调试插件

The easiest Xdebug
This extension for Firefox was built to make debugging with an IDE easier. You can find the extension at https://addons.mozilla.org/en-US/firefox/addon/the-easiest-xdebug/.

其中的原理你可以参看https://xdebug.org/docs/remote

调试PHP

在PHPStorm中创建项目,在代码中设置断点。点击phpstorm run>start listening或者右上角的小电话开启监听。进入需要调试的页面,点击火狐右上角的“臭虫”开始调试,你也可以在此点击关闭调试。


到此,你就可以愉快的进行断点调试跟踪代码了!

分析代码性能

你也可以利用WinCacheGrind或者QCacheGrind软件和xdebug生成的cachegrind.out文件分析PHP脚本的性能。
下载地址:
http://sourceforge.net/projects/wincachegrind/
http://sourceforge.net/projects/qcachegrindwin/
你也可以使用其他工具分析,参照这里:
https://xdebug.org/docs/profiler

参考资料

欢迎关注我的公众号dxk-blog获取最新文章。
关注公众号获取最新文章

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值