以前寫過一篇博客《PHP的學習--在sublime中使用XDebug(Ubuntu)》,講了在Ubuntu系統 sublime 中配置 XDebug,其實配置好以後,我也不多用,緣由有兩點:一是正常狀況下使用 var_dump 就夠了,二是插件的快捷鍵太複雜,又沒有相應的操做的按鈕,使用太不方便。php
後來,編輯器切換到了Atom,也就一直沒嘗試去使用 XDebug,最近想要了解一下 Laravel 的源碼,想起了看看 Atom 是否有 XDebug 的工具,這一看,還真有,就是 php-debug 項目。發現其操做也比以前 sublime 上插件方便不少。不過在安裝過程當中遇到了一些坑,在這裏記錄一下。html
首先安裝 XDebug,命令以下 :git
brew install homebrew/php/php56-xdebug
我使用了 brew 去安裝,由於以前裝的 php56,因此 XDebug 也要安裝相應的版本。github
編輯 /usr/local/etc/php/5.6/conf.d/ext-xdebug.ini 文件,添加以下內容:json
xdebug.remote_enable=1 xdebug.remote_host=127.0.0.1 xdebug.remote_connect_back=1 # Not safe for production servers xdebug.remote_port=9000 xdebug.remote_handler=dbgp xdebug.remote_mode=req xdebug.remote_autostart=true
而後重啓 php-fpm,這樣 php XDebug 就配置好了。vim
關於上面配置項的相關解釋能夠查看以前的博客《PHP的學習--在sublime中使用XDebug(Ubuntu)》編輯器
有一點要注意的是,須要確認 9000 端口號沒有被佔用,若是已被佔用,能夠更換爲其它端口號。php-fpm
而後在 Atom 中安裝 php-debug 插件,這個我就不細說了。工具
最後編輯 vim ~/.atom/config.cson 文件,添加以下內容:學習
"php-debug": { ServerPort: 9000 }
這裏的端口號跟 XDebug 的配置保持一致便可。
你會發現這裏要添加的內容跟 php-debug 的 doc 裏的不太同樣,doc 中的內容以下:
"php-debug": { ServerPort: 9000 PathMaps: [ "remotepath;localpath" "/base/path/on/remote/system;C:\\base\\path\\on\\local\\system" ] }
以前照着 doc 填進去了,沒有看相關的解釋,結果每次 Debug 時,都是跳到了空頁面。後來從新讀了一下 doc, 才發現這個問題。
PathMaps的解釋是若是調試代碼在遠程機器上,使用PathMaps能夠映射遠程機器到本地機上。
因此若是咱們只是在本地使用,根本就不須要這個配置。就由於這個,我糾結了小半天。。。
獲得的經驗是,必定要仔細閱讀文檔,必定要仔細閱讀文檔,必定要仔細閱讀文檔,重要的事情說三遍~~