2013年11月15日 星期五

[PHP] 用Xdebug協助除錯

寫程式總會碰到除蟲的痛,
僅管PHP算是比較好寫的程式,
但單只靠伺服器吐回來的陽春錯誤訊息,在小程式裡上可以應付,
當寫到規模比較大的程式時,這樣的error是不夠幫助我們除蟲的,
Xdebug,是一個幫助PHP除錯的延伸應用,
除了既有的error message以外,連call stack也會顯示出來,方便許多。
安裝步驟(我以AMPPS為例):
1.先查詢目前所使用PHP的資訊
->2種方法可查詢
a.使用phpinfo()
<?php phpinfo(); ?>
b.或進入AMPPS page查詢

2.phpinfo get.直接全選+複製所有內容,

3.到Xdebug wizard page,在空格處貼上剛複製的phpinfo,送出後會自動分析所需要的xdebug版本
(當然也可以直接到官網自行選擇所符合的版本下載),

4.自動跳出xdebug.版本.dll的下載點,還有設定說明,

5.下載dll檔到ext folder裡(ex. C:\Ampps\php\ext),

6.打開php.ini,在下方加入以下設定碼->save->finish!
(使用AMPPS,要打開apache下的php.ini喔)
zend_extension = "C:\Program Files\Ampps\php\ext\php_xdebug-2.2.3-5.3-vc9.dll"
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_host=localhost
xdebug.remote_port=9000
7.Restart Apache!!
8.隨便測試一個寫錯的程式,Bingo!!

對照沒有xdebug前,原始的error message

Ref.

沒有留言:

張貼留言