Xdebug 配置

到官網 http://www.xdebug.com/download.php 下載
找到對應PHP版本的 Xdebug ,後面帶 TS 的爲線程安全,本機環境爲 win7 64 + php-5.5.1-Win32-VC11-x64 ,下載的是 Xdebug 2.3.3 PHP 5.5 VC11 TS (64 bit)



安裝:
Win :將下載的dll文件(這裏是php_xdebug-2.3.3-5.5-vc11-x86_64.dll)放到 php 安裝目錄的 ext 文件夾下。本機放在 D:\ApacheServer\php\ext\
在ApacheServer下面新建xdebug文件夾,再在xdebug下面新建trace與profiler文件夾,用來存放xdebug生成的兩種信息



編輯php.ini,加入下面幾行

zend_extension              = "D:\ApacheServer\php\ext\php_xdebug-2.3.3-5.5-vc11-x86_64.dll"
;容許遠程IDE調試
xdebug.remote_enable        = true
;遠程主機
xdebug.remote_host          = 127.0.0.1
;xdebug.remote_port         = 9000 ;默認端口 9000

xdebug.profiler_enable      = on
;臨時跟蹤信息輸出
xdebug.trace_output_dir     = "D:\ApacheServer\xdebug\trace"
xdebug.profiler_output_dir  = "D:\ApacheServer\xdebug\profiler"

;其他參數
;開啓自動跟蹤。自動打開"監測函數調用過程"的功模。該功能能夠在你指定的目錄中將函數調用的監測信息以文件的形式輸出
xdebug.auto_trace           = On
;開啓異常跟蹤
xdebug.show_exception_trace = On
;開啓遠程調試自動啓動
xdebug.remote_autostart     = On
;收集變量
xdebug.collect_vars         = On
;收集返回值
xdebug.collect_return       = On
;收集參數
xdebug.collect_params       = On
;顯示局部變量
xdebug.show_local_vars      = On
;顯示默認的錯誤信息
xdebug.default_enable       = On
;用於zend studio遠程調試的應用層通訊協議
xdebug.remote_handler       = dbgp
;若是設得過小,函數中有遞歸調用自身次數太多時會報超過最大嵌套數錯
xdebug.max_nesting_level    = 10000


zend_extension = "D:\ApacheServer\php\ext\php_xdebug-2.3.3-5.5-vc11-x86_64.dll" 與 Zend Debugger 同樣
不一樣系統及 PHP 版本有不一樣寫法
Linux 和 Mac OS X               : zend_extension    = "D:\ApacheServer\php\ext\php_xdebug-2.3.3-5.5-vc11-x86_64.dll"
Windows Thread-Safe 版 PHP      : zend_extension_ts = "D:\ApacheServer\php\ext\php_xdebug-2.3.3-5.5-vc11-x86_64.dll"
Windows Non-Thread-Safe 版 PHP  : zend_extension    = "D:\ApacheServer\php\ext\php_xdebug-2.3.3-5.5-vc11-x86_64.dll"
因此同一服務器只能加載一個調試工具,要麼 Zend Debugger 要麼 Xdebug
但在 PHP5.5 環境下測試, Thread-Safe 版 PHP 後面不能加 _ts 只能寫成 zend_extension = 


xdebug.profiler_enable = on 及後面的目錄 "D:\ApacheServer\xdebug" 做用是開啓把執行狀況的分析文件寫入到指定目錄中的功能,可自由設置。也可不寫
生成的文件,例如 cachegrind.out.4408 這種格式命名的文件,用編輯器打開能夠看到不少程序運行的相關細節信息

重啓Apache


重啓
先寫一個能夠致使執行出錯的程序,例如嘗試包含一個不存在的文件。

<?php
require 'abc.php';
?>

而後經過瀏覽器訪問,驚奇地發現,出錯信息變成了彩色的了,而且Xdebug跟蹤代碼的執行



Zend Studio設置
Zend Studio 10.6.2
Apache2.4.4
修改 Zend Studio 設置
Window->Preferences->PHP->PHP Executables->Add
填寫內容以下,Executable path選擇文件後PHP ini file (optional)自動賦值
Name                    : PHP 5.5.1_CLI
Executable path         : D:\ApacheServer\php\php.exe
PHP ini file (optional) : D:\ApacheServer\php\php.ini
SAPI Type               : CLI
PHP debugger            : XDebug
點擊Finish保存後自動就是默認


(若是隻須要CLI調試此步可忽略)點擊PHP Server下拉框Default PHP Web Server右邊的PHP Servers...
選中Name|URL列表中的一條內容,點擊右邊的Edit
在彈出框的Debugger下拉框中選擇XDebug


開始調試
在代碼中在左邊行數欄上雙擊加斷點
Run->Debug Configurations...
雙擊PHP CLI Application
在Name處輸入想要的名稱,在PHP File處右邊點擊Browse,選擇要debug的文件,點擊下面的Apply便可

或者打開要運行的頁面
Run->Debug As->PHP CLI Application
便可以調試模式運行,也可選擇CLI以外其餘調試模式
點擊工具欄向下箭頭(Step Into)或按 F5 逐行執行。點擊左邊的綠色向右箭頭(Resume)或按F8一直執行,直到斷點處停下
點擊紅色按鈕(Terminate)結束調試,再點擊臭蟲按鈕從新開始調試
相關文章
相關標籤/搜索