安装 Xdebug

  1. 访问 https://xdebug.org/wizard.php
  2. 检测本机 Xdebug 的安装情况
  3. 根据提示安装 Xdebug
  4. 启用,在 php.ini 文件中加入字段
1
2
3
4
5
6
7
zend_extension = /usr/local/Cellar/php56/5.6.20/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so ;此处替换成真实路径
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_host=my.local.com ;此处替换成真实的 hostname
xdebug.remote_port=9000
xdebug.idekey="PHPSTORM"

配置 PhpStorm

写在前面

通过修改 hosts,定制化一个自己喜欢的域名用作调试,会省事一些,参考 OS X 下本地调试

配置 Server 信息

Preferences -> Languages & Frameworks -> PHP -> Server

Tips: 勾选 Use path mappings,并选择项目工程的根目录,Absolute path on the server 一栏选择相同的路径。

配置调试代理

Preference -> Languages & Frameworks -> PHP -> Debug -> DBGp Proxy

Tips: IDE Key, Host, Port 的设置必须和此前 Xdebug 在 php.ini 文件中的配置一致。

开启监听

Run -> Starting Listening for PHP Debug Connections

调试

实际上,在开启监听的情况下,IDE 通过请求头的 Cookie 中 是否包含 XDEBUG_SESSION=PHPSTORM 这个字段来决定断点是否生效。为了方便,可以采用以下方法进行高效调试。

  • Chrome 插件: Xdebug helper
  • Paw(推荐): 可根据实际需要对请求头进行勾选

Done

参考链接