我是windows版本,首先需下載xdebug:放到指定ext
位置後運行phpinfo()函數
看一下是否安裝成功。php
附上xdebug下載版本請本身對應chrome
增長php.ini
中的選項以下,注意php.ini
中端口和下圖中的端口號須要保持一致ubuntu
[xdebug] zend_extension="D:\phpStudy\php56n\ext\php_xdebug-2.2.6-5.6-vc11-nts.dll" xdebug.remote_enable = On xdebug.remote_handler = dbgp xdebug.remote_host= localhost xdebug.remote_port = 9000 xdebug.idekey = PHPSTORM
ubuntu更簡單 apt-get install php-xdebug
windows
phpstorm
中setting
-搜索xdebug
,按照下圖設置端口等。3.參考如下gif圖,注意我是在本地host設置了域名。若是沒有點擊小蟲子(未讓phpstorm監聽9000調試端口),咱們打印一個變量會像往常輸出在瀏覽器。而安裝了xdebug擴展後(竟然打印出來有顏色!)以下兩張圖:瀏覽器
沒裝xdebug擴展的框架
裝了xdebug擴展的phpstorm
如何添加配置圖可參考下圖:編輯器
4.那若是不想經過瀏覽器輸出,要捕獲程序全部變量,就須要設置斷點.點擊小蟲子以後運行,先會跳到瀏覽器,被phpstorm捕獲到後會自動跳到編輯器,而後在編輯器的控制檯中就會有變量內容,點擊x號就能夠關閉!不用了就小蟲子右邊電話掛掉ide
=============================================================
以上是phpstorm8,如今用的最新版。最新版的我本身安裝了下,須要chrome的一個擴展,這樣phpstorm才能監聽到來自瀏覽器的數據
下面簡單記錄下調試的選項
先貼個圖
show execution point :顯示當前斷點的位置
step over :直接從上一個斷點到下一個斷點,不進入子函數。好比從圖的的54-55
step into:進入當前斷點子函數,就是打破砂鍋爲到底。臭不要臉的意思。(固然若是你就echo 1 ,step into 和over 沒啥區別~)
force step into:強制進入,通常用不到強制吧,
step out 跳出的意思是,你step into了幾層,你以爲不必再深究了,想看下一個斷點,這樣你就能夠一步步在out回來,而後繼續你的下一個斷點查看。
最後一個 run to cursor 固然很重要,由於通常框架都是index.php單一入口。因此咱們能夠從瀏覽器鏈接到咱們的controller,而後到debug中設置當前斷點便可。函數