PHP调试跟踪之XDebug使用总结:
Xdebug是一个开源的PHP程序调试工具,可以使用它来调试、跟踪及分析程序运行状态。当然,Xdebug需要结合PHP的编辑工具来打断点、跟踪、调试及分析,比较常用的PHP的Xdebug调试环境:VScode +Xdebug / ZendStudio + Xdebug / VIM+debug/ Sublime+Xdebug / phpstorm + xdebug。
一、安装
1、在php运行环境安装xdebug
添加epel的remi原
rpm -Uvh http://ftp.iij.ad.jp/pub/linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
yum安装xdebug
yum install php-pecl-xdebug
也可以尝试使用
pecl install xdebug
使用vim 编辑/etc/php.d/xdebug.ini
zend_extension=/usr/lib64/php/modules/xdebug.so xdebug.remote_enable = On xdebug.remote_handler = "dbgp" xdebug.remote_host = "10.99.99.10" ;xdebug.remote_autostart = On ;xdebug.remote_connect_back = On xdebug.remote_port=9000
我这里运行环境和开发ide不在一台电脑上。如在,remote_host可以使用127.0.0.1
2、在IDE上安装调试插件,zendstudio/phpstorm均默认自带不需要安装
sublime text3下安装插件 xdebug-client 或在vscode下安装php debug
下面介绍在vscode下的配置
将目录拖进vscode编辑器后,在调试菜单打开配置会出现luanch.json 如果运行环境和IDE所在环境目录不一样 需要在此配置映射pathMappings 例如:
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Listen for XDebug",
"type": "php",
"request": "launch",
"port": 9000,
"pathMappings": {
"/PHP/test" : "/Users/sgf/Documents/PHP/test"
}
},
{
"name": "Launch currently open script",
"type": "php",
"request": "launch",
"program": "{file}",
"cwd": "{fileDirname}",
"port": 9000
}
]
}
vscode左侧点击蜘蛛图标 上面点击调试即可启动监听9000 然后浏览器刷新访问 即可进入断掉调试。
需要说明的是,php-xdebug扩展中ini配置remote_autostart如果开启的话 每次php访问都会自动进入调试模式,如果不需要可以关闭此项,然后再chrome下安装xdebug-helper插件,插件中可以设置开启或者禁用调试状态,实就是在请求的时候加一个请求头(cookie等方式)告知服务器需要主动开启调试模式。
这种方式也支持对php-cli方式运行的php文件进行调试。
一如既往的表示支持!
来看看,因为,总能学到东西!
学无止境,认真拜读!