多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > 使用xdebug調試PHP 找出PHP程序的瓶頸

使用xdebug調試PHP 找出PHP程序的瓶頸

來源:程序員人生   發布時間:2014-06-15 01:10:40 閱讀次數:3449次

xdebug是PHP的一個擴展應用,有了xdebug就可以輕松的調試PHP程序,有了它,我們就不用使用var_dump()print_r()之類的傻瓜調試函數了。
Xdebug則提供了更多的功能,能全方位的對PHP腳本進行調試。Xdebug主要的功能如下:

  1. 堆棧追蹤和函數追蹤;
  2. 錯誤信息;
  3. 內存分配;
  4. 剖析php腳本的信息;
  5. 代碼覆蓋率分析;
  6. 遠程調試分析;

1、Ubuntu搭建xdebug調試環境

安裝Xdebug模塊

在終端中使用apt-get安裝xdebug,命令如下

sudo apt-get install php5-dev php-pear
sudo apt-get install php5-xdebug

然后打開php.ini文件(例如gedit /etc/php5/apache2/php.ini)。進行如下配置;

;加載xdebug動態鏈接庫
extension=xdebug.so
;xdebug分析文件輸出路徑
xdebug.profiler_output_dir = “/var/www/xdebug/”
;分析器默認是關閉,調試的時候在url中加入XDEBUG_PROFILE=true即可
xdebug.profiler_enable = Off
xdebug.profiler_enable_trigger = 1

重啟apache,這樣就可以使用xdebug調試PHP了。

2、windows下安裝xdebug

以PHP5.1.4,Windows平臺為例(其它PHP版本,其它平臺請參看官網文檔):
1. 登錄www.xdebug.org,在首頁右側有一個Windows modules,選擇其中的PHP5.1.2+,下載php_xdebug-5.1.2-2.0.0beta6.dll文件;
2. 將下載的php_xdebug-5.1.2-2.0.0beta6.dll放到C:php5ext目錄,重命名為php_xdebug.dll;
3. 編輯php.ini,加入下面幾行:

extension=php_xdebug.dll
[Xdebug]
xdebug.profiler_enable=on
xdebug.trace_output_dir=”I:Projectsxdebug”
xdebug.profiler_output_dir=”I:Projectsxdebug”
xdebug.dump.GET=*
xdebug.show_local_vars=1

具體參數PHP.ini說明參見ubuntu下的注釋。

3、使用xdebug進行PHP調試

xdebug調試變量更加友好

Xdebug重寫了php里面var_dump()函數。
xdebug里的var_dump()給變量對象有不同的顏色,顯示類型長度,還可以控制顯示層次,顯示的方式經過格式化,清晰友好。
需要使用此功能,有如下參數需注意。

 

;是否覆蓋php里面的函數var_dump();默認是開啟的,值為1;設為0,則關閉;
xdebug.overload_var_dump = 1
;控制數組子元素顯示的大小默認為256
xdebug.var_display_max_children = 256
;控制變量打印的大小,默認為512
xdebug.var_display_max_data = 512
;控制數組和對象元素顯示的層級。默認為3
xdebug.var_display_max_depth = 3

xdebug的堆棧追蹤功能

如果腳本中出現函數參數不正確,方法重復,語法錯誤等錯誤的時候。xdebug能追蹤其錯誤產生的產生的過程。

參數配置請參考http://xdebug.com/docs/stack_trace;一般來說,很少需要配置。

4、使用xdebug進行腳本性能測試

在php.ini做如下配置

;默認為0,不開啟xdebug調試器;
xdebug.profiler_enable = 0
;默認為0;這里設為1,可以通過XDEBUG_PROFILE參數通過GET/POST傳遞
xdebug.profiler_enable_trigger = 1

測試性能結果查看工具

測試完畢后,我們需要查看下測試結果,從而找到PHP的瓶頸。
這里推薦使用兩款查看工具,ubuntu下可以使用KCachegrind,windows下可以使用WinCacheGrind。具體查看xdebug測試結果工具使用方法自己谷歌,很簡單。懂點E文就可以看懂的。

5、xdebug使用注意及相關參數說明

xdebug使用注意

如果您在 phpinfo() 的輸出中沒有看到 Xdebug 部分,則 Xdebug 裝入失敗。Apache 錯誤日志會列出原因。常見錯誤包括 zend_extension 的路徑錯誤或者與其他擴展發生沖突。例如,如果需要使用 XCache 和 Xdebug,一定要先裝入 XCache。但是,由于 Xdebug 適于在開發時使用并假定 xdebug.so 的路徑正確,因此需要禁用其他擴展并重試。然后您可以重新啟用擴展以執行其他測試,如緩存的效果。

Xdebug 站點還有其他一些故障檢修技巧。

xdebug相關參數設置

xdebug.default_enable

類型:布爾型 默認值:On
如果這項設置為On,堆棧跟蹤將被默認的顯示在錯誤事件中。你可以通過在代碼中使用xdebug_disable()來禁止堆疊跟蹤的顯示。因為這是xdebug基本功能之一,將這項參數設置為On是比較明智的。

精彩內容,請點擊下一頁!

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 欧美色精品 | 日韩亚洲欧美一区 | 激情欧美一区二区三区 | 2021年最新久久久视精品爱 | 亚洲福利视频在线 | 亚洲欧美校园 | 亚洲精品在线播放 | 香蕉伊| 啪啪国产视频 | 欧美猛交xxxx乱大交 | 国产免费福利视频一区二区 | 欧美在线不卡视频 | 欧美午夜影院 | 成人a毛片久久免费播放 | 操操综合网 | 日韩高清在线高清免费 | 亚洲精品一区专区 | 国产福利社区 | 一本大道道香蕉免费 | 午夜视频在线观看免费视频 | 另类专区另类专区亚洲 | 18岁免费网站 | 亚洲丰满熟妇毛片在线播放 | 在线看网站 | 在线欧美三级 | 国产免费久久精品 | 亚洲成a人片在线观看尤物 亚洲成a人片在线观看中文!!! | xxx国产精品视频 | 亚洲综合国产精品 | 国产精品亚洲第一区在线28石 | 亚洲精品一区二区三区国产 | 黄色大全免费看 | 日本欧美做爰全免费的视频 | 国产福利一区二区 | 全国男人的天堂网 | 国产一区二区三区亚洲欧美 | 亚洲www视频| 日本xxxⅹ色视频在线观看网站 | 欧美精品一区二区在线观看 | 欧美在线观看视频一区 | 三级视频在线 |