第一步:安装php xdebug扩展
参考http://www.xdebug.org/docs/install
讲的很详细,这里略过。
第二步:安装sublime xdebugclient(不是xdebug)
直接用package control安装即可
第三步:配置php xdebug扩展
windows:
[XDebug] zend_extension = "D:\xampp\php\ext\php_xdebug.dll" xdebug.remote_autostart=1 xdebug.remote_enable = On xdebug.remote_host = "localhost" #本地服务器 xdebug.remote_port = 9001 #默认为9000,防止与php-fpm冲突,改为9001 xdebug.remote_handler = "dbgp"
linux:
zend_extension=/usr/lib/php/modules/xdebug.so xdebug.auto_trace = On xdebug.dump_once = On xdebug.dump_globals = On xdebug.dump_undefined = On xdebug.dump.SERVER = REQUEST_METHOD,REQUEST_URI,HTTP_USER_AGENT xdebug.dump.REQUEST=* xdebug.show_exception_trace = On xdebug.show_local_vars = 1 xdebug.var_display_max_depth = 6 xdebug.idekey="sublime.xdebug" xdebug.remote_autostart=1 xdebug.remote_enable = On xdebug.remote_host = 10.10.120.79 #这里是远程调试,即为你sublime的机器的ip xdebug.remote_port = 9001 xdebug.remote_handler = "dbgp"
第四步:配置sublime xdebug
这一步搞了半天才懂的。
用sublime打开你要调试的程序,点击sublime导航的Project->save project as。生成一个.sublime-project的文件,修改其为:
(本地调试)
{ "folders": [ { "path": "/D/xampp/htdocs" #这里应该会自动生成 } ], "settings": { "xdebug": { "path_mapping": { }, #本机调试此项不需要设置 "url": "http://localhost/xampp/php.php",#这里为xdebug打开的页面 "super_globals": true, "close_on_stop": true, "port": 9001 #此port与之前xdebug扩展一致 } } }
(远程调试)
{ "folders": [ { "path": "/D/biwebs" } ], "settings": { "xdebug": { "path_mapping": { "/data/web/dataoa/" : "D:/biwebs/dataoa/" #与本地就此处不同,必须将远程与本地的映射写明 }, "url": "http://testdata.zhenai.com/test.php", "super_globals": true, "close_on_stop": true, "port": 9001 } } }
下面来看下效果:
(本地)
1.先在试例代码中标记个断点(ctrl+F8)
2、开启xdebug
此时浏览器就会打开之前在sublime配置中的url并卡在断点处
3、调试代码
ctrl+shift+f5
变量一目了然展示在眼前,太牛X了,妈妈再也不用担心我调BUG了。
具体其它操作见https://github.com/martomo/SublimeTextXdebug
远程也是如此,前提是两台机器必须是互通的。调不通多点耐心,相信胜利就在眼前!