下载xdebug xdebug官网 根据php 版本下载相应的版本, 把本地的phpinfo()输出的内容全部复制到 https://xdebug.org/wizard.php 中,
分析出当前环境需要下载哪个版本xdebug, 把文件放在php安装目录下ext目录内,修改php.ini 配置文件,增加如下内容:
[Xdebug]
;zend_extension=C:\wamp\PHP5\ext\php_xdebug.dll
zend_extension = "<path to php_xdebug.dll>"
;是否开启远程调试
xdebug.remote_enable = true
;remote_host 是指调试客户端的地址,即IDE所在的IP,同样的remote_port 是客户端的端口,这两项在远程调试的
;允许调试的客户端IP
xdebug.remote_host
xdebug.remote_host=127.0.0.1
;远程调试的端口(默认9000)
xdebug.remote_port=
9001
;Xdebug(远程)调试器允许测试数据结构,步进并且调试你的代码。Xdebug提供了两种协议用于与其进行交互, Xdebug 2.1 和之后的版本只支持dbgp
协议,远程调试的应用层通信协议
xdebug.remote_handler = dbgp
;日志追踪输出目录
xdebug.trace_output_dir="C:/wamp/xdebug"
;xdebug检测项目性能 profiler 一般不要打开性能监控,会产生很大的缓存文件
;profiler_enable boolean类型,默认值0。用于设定是否开启生成报告文件,如果设定为1,每次请求都会生成一个性能报告文件。
xdebug.profiler_enable=0
;boolean类型,默认值0。如果开启该选项,则在每次请求中如果GET/POST或cookie中包含XDEBUG_PROFILE变量名,则才会生成性能报告文件(前提是必须关闭xdebug.profiler_enable选项,否则该选项不起作用)。
xdebug.profiler_enable_trigger = Off
;字符串类型,用于设定生成的报告文件的存放的路径。
xdebug.profiler_output_dir="C:/wamp/xdebug"
;字符串类型。用于设定生成的报告文件的名字,如cachegrind.out.%t.%p
xdebug.profiler_output_name = "cache.out.%t-%s"
;配置xdebug idekey是phpstorm 调试和netbeans调试需要的参数 ,PHPstorm xdebug.idekey=PHPSTORM netbeans xdebug.idekey=netbeans-xdebug
xdebug.idekey="PHPSTORM"
;自动打开“监测函数调用过程”的功模。该功能可以在你指定的目录中将函数调用的监测信息以文件的形式输出。此配置项的默认值为off
xdebug.auto_trace=On
;打开收集“函数参数”的功能。将函数调用的参数值列入函数过程调用的监测信息中。此配置项的默认值为off。
xdebug.collect_params=On
;打开收集“函数返回值”的功能。将函数的返回值列入函数过程调用的监测信息中。此配置项的默认值为off。
xdebug.collect_return=On
;显示默认的错误信息
xdebug.default_enable=on
配置php路径等:配置PhpStorm:端口要和xdebug 中xdebug.remote_port=
9001 一致
配置servers,后面增加PHP WEB Application会用到:
配置DBGp Proxy 其中IDEKEY Port 要和xdebug配置 中的一样,host 上面配置的servers中添加的其中的一个:
Chrome浏览器安装Xdebug helper扩展,选项中添加IDE key要和xdebug中的一样
增加PHP Web Application:
1、选择Edit Configurations
2、选择PHP Web Application,增加配置:
调试,选择需要调试的PHP Web Application ,然后点击像电话似的按钮,再点击像甲壳虫似的按钮:
结果,报的错误时因为文件映射的路径没有在project中找到,因为自己配置的php.ini中增加auto_prepend_file = "C:\Users\shanghai\AppData\Roaming\Composer\vendor\autoload.php",但不影响调试,按照红线的按钮操作即可:
推荐文章:
https://confluence.jetbrains.com/display/PhpStorm/Debugging+with+PhpStorm
http://redcrackle.com/blog/drupal-8/phpstorm
https://blog.jetbrains.com/webide/2011/03/configure-php-debugging-in-phpstorm-2-0/