PHP調試及效能分析工具Xdebug詳解

來源:互聯網
上載者:User
下面小編就為大家帶來一篇PHP調試及效能分析工具Xdebug詳解。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

程式開發過程中,一般用得最多的調試方法就是用echo、print_r()、var_dump()、printf()等將語句列印出來。對PHP指令碼的執行效率,通常是指令碼執行時間。對資料庫SQL的效率,通常是資料庫Query時間,但這樣並不能真正定位和分析指令碼執行和資料庫查詢的瓶頸所在?對此,有一個叫Xdebug(www.xdebug.org)的PHP程式調試器(即一個Debug工具),可以用來跟蹤,調試和分析PHP程式的健全狀態。

一、以windows平台對此模組的安裝做簡單的介紹:

1. 下載PHP的XDebug擴充,網址:http://xdebug.org/(這個根據你目前使用的PHP版本而定);

2. 將下載的模組(php_xdebug-2.0.5-5.2.dll)放到PHP的安裝的 ext 目錄下;

3. 配置php.ini檔案,將以下幾行添加

**************************************

extension=php_xdebug-2.0.5-5.2.dll
[Xdebug]
xdebug.profiler_enable=on
xdebug.trace_output_dir="E:/Projects/xdebug" #放置Xdebug輸出的資料檔案的目錄
xdebug.profiler_output_dir="E:/Projects/xdebug"
********************************************************

4. 重啟Apache伺服器。完成!!!

5. <?php echo phpinfo();?>如果輸出的內容中有看到xdebug,說明安裝配置成功。

6. 在Windows平台下,可以用用戶端(Windows):WinCacheGrind WinCacheGrind 這個軟體來開啟這些檔案。可以更直觀地顯示其中內容:

二、以Linux平台作簡單的介紹:


1. 在Linux下編譯安裝XDebug

[root@localhost src]# tar -xvf xdebug-2.0.5
[root@localhost xdebug-2.0.5]# /usr/local/php/bin/phpize
[root@localhost xdebug-2.0.5]# ./configure --enable-xdebug --with-php-config=/usr/locar/php/bin/php-config
[root@localhost xdebug-2.0.5]# make
可以將產生的 xdebug.so 拷貝到 extension_dir 所指向的路徑目錄。

2. 配置

vi /usr/local/php/lib/php.ini 修改php.ini,去除PHP加速模組,增加以下配置資訊支援XDebug擴充
#extension=vld.so //是輸出OPCODES的模組
extension=xdebug.so
[Xdebug]
xdebug.profiler_enable=on
xdebug.trace_output_dir="/tmp/xdebug"
xdebug.profiler_output_dir="/tmp/xdebug"
xdebug.profile_output_name="script"

註:也可使用 [root@localhost xdebug-2.0.5]# /usr/local/php/bin/php -m 列出所有的擴充模組

3. 重啟WEB伺服器

[root@localhost xdebug-2.0.5]# service httpd restart OK!!!

Xdebug工具會將跟蹤的錯誤資訊以日記的形式寫入到輸出的資料檔案中,可以檔案去查看,但為了更直觀,還有一個圖形介面的工具來分析跟蹤的日記記錄。WinCacheGrind (wincachegrind.souceforge.net)此軟體直接安裝就行,從圖形視窗中可以將整個程式的結構,每個函數被調用的次數,執行時間都一目瞭然。很專業很方便!!!

總結:Xdebug可以跟蹤程式的運行,通過對記錄檔的分析,我們可以迅速找到程式啟動並執行瓶頸所在,提高程式效率,從而提高整個系統的效能。

以上就是本文的全部內容,希望對大家的學習有所協助。


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.