安装xdebug
sudo pecl install xdebug
访问phpinfo可以看到xdebug的版本,我安装的是2.5.0的版本
Paste_Image.png
如果需要安装其他版本,可以进入pecl官网找到xdebug的版本,然后执行
sudo pecl install xdebug-version
配置远程调试php.ini
[xdebug]
zend_extension = "xdebug.so"
;xdebug.auto_trace = on
;xdebug.auto_profile = on
xdebug.collect_params = on
xdebug.collect_return = on
xdebug.profiler_enable = on
xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.remote_port = 9000
xdebug.remote_host = "localhost"
;xdebug.default_enable = on
xdebug.trace_output_dir = "/home/wwwlogs/xdebug_log"
xdebug.profiler_output_dir = "/home/wwwlogs/xdebug_log"
这里不配置正确会出现命令可以调试,但浏览器方式无法调试
还有可能出现Message: mysqli_init(): Property access is not allowed yet这样的错误
phpstorm配置
Paste_Image.png在settings->PHP栏目下,CLI interpreter需要进行设置,没有就新建一个php解析器。而这个php必须带有Xdebug模块,就是第一步安装的模块,否则只能运行无法调试。
Paste_Image.png对应带有框架的应用,一般会进行nginx分发,这个时候需要远程调试。我们在调试configuration里面新建PHP Web Application类型的配置,自动我们运行的server配置就可以了。
调试运行
Paste_Image.png通过打断点进行调试
这里可以进行变量监控,变量实时修改等等调试方法。
网友评论