首頁  >  文章  >  後端開發  >  php xdebug的編譯安裝以及設定說明

php xdebug的編譯安裝以及設定說明

WBOY
WBOY原創
2016-08-08 09:32:161081瀏覽

今天有個PHP小生問我php 的Xdebug擴充的問題,於是就又重新寫了這篇筆記,其實這個安裝配置很簡單,考慮到新手的理解,配備圖文較為詳細和實際模擬操作步驟,大牛略過即可

先開啟linux終端執行指令 git clone git://github.com/xdebug/xdebug.git 下載xdebug擴充包,如下圖: (沒有git的請先安裝git)


接著執行以下指令切換到xdebug檔包目錄
[Happy@localhost www]$ cd xdebug
在xdebug目錄下執行phpize指令(具體替換成您的實際PHP安裝路徑下的phpize檔所在路徑)
[Happy@ localhost xdebug]$ /usr/local/php/bin/phpize   (執行結果如下圖可看到php的版本日期等)

編譯xdebug擴充包
[Happy@localhost xdem]
編譯xdebug擴充包
[Happy@localhost xde]$ . with-php-config=/usr/local/php/bin/php-config [Happy@localhost xdebug]$ make  (如圖所示出現下列資訊則說明make成功)



然後執行最後一步make install完成安裝
[Happy@localhost xdebug]$ make install出現如圖所示表示安裝成功並顯示出php擴充所在目錄位置
此時查看擴充目錄即可看到
xdebug.so擴充檔案已經安裝到PHP擴充目錄下


配置PHP.INI 檔案加入XDEBUG擴充
[Xdebug]
zend_extension="/usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/xdebug. so"
xdebug.remote_enable        = true
xdebug.remote_host          = localhost
#default port 9000
#xdem. enable      = on
xdebug.trace_output_dir     = "/var/www/phpxdebug"
xdebug.profiler_output_dir  = "/var/www/phpxdebug"
xdebug.auto_trace           = On
xdebug.show_exception_trace = On
xdebug.remote_autostart  遠      = On
xdebug.remote_handler       =dbgp
xdebug.max_nesting_level = 10000
php.ini設定參數修改完成後在PHP頁面中呼叫phpinfo()函數可看到頁面中Xdebug的擴充資訊和相關參數選項,我這裡的設定如圖所示:

php xdebug 参数说明(更多问题请参见 摘取天上星 之前关于xdebug的日志)

zend_extension = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so" #加载扩展文件 xdebug.remote_enable = true xdebug.remote_host = localhost #xdebug.remote_port = 9000 #默认端口 9000 xdebug.profiler_enable = on xdebug.trace_output_dir = "/var/www/phpxdebug" xdebug.profiler_output_dir = "/var/www/phpxdebug" #其余参数 #开启自动跟踪 xdebug.auto_trace = On #开启异常跟踪 xdebug.show_exception_trace = On #开启远程调试自动启动 xdebug.remote_autostart = On #收集变量 xdebug.collect_vars = On #收集返回值 xdebug.collect_return = On #用于zend studio远程调试的应用层通信协议 xdebug.remote_handler =dbgp #如果设得太小,函数中有递归调用自身次数太多时会报超过最大嵌套数错 xdebug.max_nesting_level = 10000 zend_extension = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so"
Xdebug載入方法,不同系統及PHP 版本有不同寫法Linux 和Mac OS X : zend_extension = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so"
Windows ThreadWindows ThreadWindows ThreadWindows ThreadWindows ThreadWindows ThreadWindows ThreadWindows ThreadWindows ThreadWindows Thread -Safe 版PHP : zend_extension_ts = "D:phpextxdebug.dll"Windows Non-Thread-Safe 版PHP : zend_extension = "D:phpextxdebug.dll"所以同一伺服器只能載入一個偵錯工具,要麼Zend Debugger Xdedell」但在PHP5.5 環境下測試, Thread-Safe 版PHP 後面不能加_ts 只能寫成zend_extension = xdebug.remote_enable = true 允許遠端IDExded
.probugon

. /var/www/phpxdebug"

作用是開啟把執行情況的分析檔案寫入到指定目錄中的功能,可自由設定。也可不寫產生的文件,例如 cachegrind

.out.4408

這種格式命名的文件,用編輯器開啟可以看到很多程式運作的相關細節資訊

🎜🎜🎜🎜 🎜 以上就介紹了php xdebug的編譯安裝以及設定說明,包含了方面的內容,希望對PHP教學有興趣的朋友有幫助。 🎜 🎜 🎜
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn