教大家如果搭建一套phpstorm+wamp+xdebug調試PHP的環境
我是51CTO學院講師吳華,在51CTO學院 “4.20 IT充電節”(4月19~20日) 到來之際,和大家分享一下《教大家如果搭建一套phpstorm+wamp+xdebug調試PHP的環境》經驗。正文來啦~~~
現在大多數的程序員使用的調試方式一般都是echo,var_dump,file_put_contents等其他方式,效率比較低下,因此我們有必要學習用工具進行調試,工具調試主要可以用來解決以下問題:
1.審核系統性能
以前在一家公司維護過一個大型商城,全站頁面全部能訪問正常,就一個點贊的活動頁面非常卡,點進去要20多秒才能完全打開,雖然里面有幾百萬數據,其他頁面根本不會出現這么長時間加載問題,開始我們完全不清楚是什么問題,后來使用xdebug步步跟進,發現一條SQL語句居然執行了20多秒,原因是跨表不合理,修改之后,速度只需要0.5秒就能打開了。
2.解決疑難雜癥
線下培訓的學生畢業后,有個同學被隱式轉換的數據類型浪費了一天時間,后來叫他用Xdebug跟蹤,幾分鐘就定位到問題所在。
3.熟練掌握系統運行流程
通過斷點結合單步,步入,步過等方式,可以對程序流程有個非常清楚直觀的感受。程序在每一步的變化,從而達到全面分析系統流程的目的。
4.其他方面的應用
- 搭建調試環境的具體步驟如下:
- phpstorm版本:PhpStorm-2016.2.1
- wamp版本:2.5,自帶xdebug
***步:把下面的xdebug配置放在php.ini文件中
根據自己的機器實際情況修改路徑
- ; XDEBUG Extension
- zend_extension = "e:/wamp/bin/php/php5.5.12/zend_ext/php_xdebug-2.2.5-5.5-vc11.dll";[xdebug]
- xdebug.remote_enable = off
- xdebug.profiler_enable = off
- xdebug.profiler_enable_trigger = off
- xdebug.profiler_output_name = cachegrind.out.%t.%p
- xdebug.profiler_output_dir = "e:/wamp/tmp"
- xdebug.show_local_vars=0
- xdebug.idekey=PhpStorm
- xdebug.remote_enable = On
- xdebug.remote_host=localhost
- xdebug.remote_port=9000
- xdebug.remote_handler=dbgp
第二步:判斷xdebug是否加載,可以打印phpinfo()函數 進行查看。
第三步: 配置phpstorm編輯器中相關配置
File->Settings->Languages&Frame Works->Php->Interpreter 選擇web服務器套件中php.exe的路徑。
第四步:File->Settings->Languages&Frame Works->Php->Servers 配置服務器相關設置:
- Name:localhost
- Host:localhost
- Port:80
- Debugger: Xdebug
第五步:File->Settings->Languages&Frame Works->Php->Debug->DBGp Proxy 配置相關設置:
- Ide key: phpstorm 這個值是php.ini中那個xdebug那段ide key的值
- host: localhost
- port: 80
第六步:File->Settings->Languages&Frame Works->Php-Debug 找到右邊窗口對應的debug設置,把端口改成9000
第七步:安裝谷歌瀏覽器的Xdebug擴展
第八步:
1、開啟phpstorm的監聽按鈕
2、開啟瀏覽器右上角的監聽按鈕,允許debug
3、在文件中設置斷點
4、在瀏覽器中運行程序之后 就會把程序斷在第三步設定的斷點下,再之后就可以單步,步入,跳過等等方式來調試程序。
51CTO學院 4.20 IT充電節
(19-20號兩天,100門視頻課程免單搶,更有視頻課程會員享6折,非會員享7折,套餐折上8折,微職位立減2000元鉅惠)
活動鏈接:http://edu.51cto.com/activity/lists/id-47.html?wenzhang
相關視頻教程: