摘要:是一個(gè)開放源代碼的程序調(diào)試器即一個(gè)工具,可以用來跟蹤,調(diào)試和分析程序的運(yùn)行狀況。以下為安裝示例,安裝請參考集成開發(fā)和斷點(diǎn)調(diào)試環(huán)境的配置。指令的配置路徑必須是絕對路徑。
一、下載XdebugXdebug是一個(gè)開放源代碼的PHP程序調(diào)試器(即一個(gè)Debug工具),可以用來跟蹤,調(diào)試和分析PHP程序的運(yùn)行狀況。以下為Windows+Phpstorm+Xampp+Xdebug安裝示例,MAC安裝請參考集成開發(fā)和斷點(diǎn)調(diào)試環(huán)境的配置Mac+PhpStorm+XAMPP+Xdebug。
在下載xdebu之前,我們需要先看下我們的php版本,找到與之對應(yīng)的Xdebug版本下載即可,我這里的PHP版本為V5.6.15,所以,Xdebug的版本也必須是V5.6版本。 重要的事情再說一遍:php版本和xdebug版本一定要相對應(yīng)哦!??!Xdebug官網(wǎng)下載
查看php版本
echo phpinfo();
下載XdebugV5.6:
二、安裝Xdebug 1、php.ini的配置將下載大的擴(kuò)展文件php_xdebug-2.5.0-5.6-vc11-x86_64.dll放置到php的ext擴(kuò)展目錄下,這個(gè)是我的擴(kuò)展路徑:D:xamppsphpextphp_xdebug-2.5.0-5.6-vc11-x86_64.dll,然后在php.ini中添加下面的一段擴(kuò)展代碼,然后保存。
[xdebug] ;指定Xdebug擴(kuò)展文件的絕對路徑 zend_extension=”D:xamppsphpextphp_xdebug-2.5.0-5.6-vc11-x86_64.dll” ;啟用性能檢測分析 xdebug.remote_enable = On ;啟用代碼自動(dòng)跟蹤 xdebug.auto_trace=on ;允許收集傳遞給函數(shù)的參數(shù)變量 xdebug.collect_params=on ;允許收集函數(shù)調(diào)用的返回值 xdebug.collect_return=on ;指定堆棧跟蹤文件的存放目錄 xdebug.trace_output_dir="D:/debug" ;指定性能分析文件的存放目錄 xdebug.profiler_output_dir="D:/debug" xdebug.remote_handler = dbgp xdebug.remote_host= localhost xdebug.remote_port = 9000 xdebug.idekey = PHPSTORM
說明::在上述配置內(nèi)容中,zend_extension用于指定Xdebug擴(kuò)展模塊的文件路徑(由于Xdebug是基于Zend引擎的擴(kuò)展,因此必須使用zend_extension配置指令,而不是extension。zend_extension指令的配置路徑必須是絕對路徑)。remote_handler 、remote_host、remote_port 這些都有默認(rèn)值,但還是建議設(shè)置下,至少知道要設(shè)置這些參數(shù)~
2、重啟Apache重啟Apache,然后查看phpinfo(),是否已經(jīng)安裝Xdebug擴(kuò)展成功
如果加載擴(kuò)展失敗,請看失敗日志:
錯(cuò)誤信息存在apache的logs文件中,error.log,查看方法如圖
查了下原因,是因?yàn)閍pache為32位,php為x86即32位,而自己裝了一個(gè)64位的Xdebug,所以,安裝擴(kuò)展失敗了,這里需要找一個(gè)32位的Xdebug,并且php編譯版本為V11的Xdebug:
三、出現(xiàn)的問題安裝好Xdebug后,進(jìn)行斷點(diǎn)調(diào)試又出現(xiàn)這樣的幺蛾子:
Waiting for incoming connection with ide key "15222"四、Homestead 安裝Xdebug擴(kuò)展 1.編譯安裝Xdebug
在經(jīng)歷了很長一段時(shí)間后,Xdebug從2.4.0版本開始,支持調(diào)試PHP 7代碼,接下來,我們采用源碼編譯的方式進(jìn)行安裝。
首先,我們執(zhí)行 vagrant ssh 登錄到Homestead虛擬機(jī);
其次,下載并解壓Xdebug源代碼:
wget http://xdebug.org/files/xdebug-2.4.0rc1.tgz tar xvzf xdebug-2.4.0rc1.tgz
接下來,進(jìn)入解壓縮的目錄,使用phpize7.0生成配置文件、configure、make、make install:
cd xdebug-2.4.0RC1 sudo phpize7.0 sudo ./configure --enable-xdebug sudo make sudo make install
然后創(chuàng)建 xdebug.ini 配置文件
mkdir -p /usr/local/php/xdebug sudo cp /usr/local/xdebug-2.4.0RC1/modules/xdebug.so /usr/local/php/xdebug/xdebug.so sudo vim xdebug.ini
xdebug.ini
zend_extension="/usr/local/php/xdebug/xdebug.so" xdebug.remote_enable = 1 xdebug.remote_connect_back = 1 xdebug.remote_port = 9000 xdebug.max_nesting_level = 500
sudo mkdir /etc/php/mods-available vagrant@homestead:/usr/local/xdebug-2.4.0RC1$ sudo cp xdebug.ini /etc/php/mods-available
接下來,在當(dāng)前PHP 7 CLI和FPM的conf.d目錄創(chuàng)建對應(yīng)的符號鏈接:
sudo ln -snf /etc/php/mods-available/xdebug.ini /etc/php/7.0/cli/conf.d/20-xdebug.ini sudo ln -snf /etc/php/mods-available/xdebug.ini /etc/php/7.0/fpm/conf.d/20-xdebug.ini
最后,我們重啟php7.0-fpm,讓新的配置生效:
sudo service php7.0-fpm restart
我們有很多方式來確認(rèn)Xdebug已經(jīng)正常工作了:
在Terminal執(zhí)行 php -m ,在輸出結(jié)果最后的[Zend Modules]部分,可以看到有Xdebug;
執(zhí)行php -i |grep xdebug,在輸出的結(jié)果中,可以看到有xdebug support => enabled;
哈哈,我們看到Xdebug已經(jīng)安裝成功了
在導(dǎo)航上 Run->edit Configurations... 進(jìn)入以下界面
相關(guān)文章:
phpstorm配置Xdebug進(jìn)行調(diào)試PHP教程
上手并過渡到PHP7(1)——基于Homestead的PHP7和XDdebug環(huán)境
本地xdebug調(diào)試搭建 Laravel+homestead+phpstorm
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/22237.html
摘要:是調(diào)試的組件是調(diào)試?yán)鳎谌粘i_發(fā)中排錯(cuò)時(shí)其斷點(diǎn)調(diào)試功能非常有幫助使得我們開發(fā)者不用依賴于傳統(tǒng)的比較的調(diào)試。并且還有一個(gè)好處通過我們還可以查看代碼運(yùn)行的邏輯,比如要研究的源碼那么這時(shí)使用,將會(huì)達(dá)到事半功倍的效果。 Introduction xdebug是php調(diào)試的組件,是調(diào)試?yán)?,在日常開發(fā)中排錯(cuò)時(shí),其斷點(diǎn)調(diào)試功能非常有幫助,使得我們開發(fā)者不用依賴于傳統(tǒng)的var_dump()/ech...
摘要:紅色方形,表示中斷當(dāng)前程序調(diào)試。第三個(gè)圖形示,強(qiáng)制進(jìn)入當(dāng)前函數(shù)內(nèi)部的程序??蚣苷f明加載的文件列表可以觀察到所有全局變量當(dāng)前局部變量的數(shù)值可以新增變量,觀察變量隨著程序執(zhí)行的變化。參考文章使用與調(diào)試一 序言 Xdebug 作為 PHP 調(diào)試工具,提供了豐富的調(diào)試函數(shù)和配置,可以直觀的看到 PHP 源代碼的步進(jìn)和性能數(shù)據(jù),以便優(yōu)化PHP代碼。 使用 phpstorm + xdebug 來調(diào)...
摘要:確定環(huán)境的干凈。這一步要優(yōu)化的話應(yīng)該是做一個(gè)類似緩存的機(jī)制,對于這種配置加載的性能提升所以我們在調(diào)試必然是要在這里配置環(huán)境的接口。 前言 在網(wǎng)上找了一些相關(guān)配置的例子,覺得很多比較復(fù)雜,并且配置項(xiàng)過于多了,有很多冗余并不是最開始就需要的配置,所以寫一下記錄,也方便以后自己查閱。 一、brew 安裝 php 在 Mac OS 這邊不需要手動(dòng)去下載編譯打包,直接使用 brew 進(jìn)行快捷安裝...
摘要:配置執(zhí)行程序點(diǎn)擊那個(gè)同步的小圖標(biāo),如果看到就說明配置有效指定模塊配置選擇,搜索,左側(cè)選擇,點(diǎn)擊新增一個(gè)。 前言 如果你想做個(gè)接口測試,但并不想公開內(nèi)部接口 如果你只是想對自己封裝的某塊代碼做個(gè)小測試 如果你想要編寫代碼邊調(diào)試,又不想操作 Postman 或前端的功能來調(diào)用 API 本文暫時(shí)僅介紹在 Laravel 和 Comoposer Library 項(xiàng)目中如何配置 PHPUni...
摘要:管理工具是一款非常好用的管理和開發(fā)工具。接口調(diào)試開發(fā)的一款功能強(qiáng)大的網(wǎng)頁調(diào)試與發(fā)送網(wǎng)頁請求。 PHPIDe 我首先力薦PHPstorm10。目前用起來很爽,集成xdebug,集成git進(jìn)去,當(dāng)然英文不好的同學(xué)在下載個(gè)漢化包,在線調(diào)試。提供諸于:智能HTML/CSS/JavaScript/PHP編輯、代碼質(zhì)量分析、調(diào)試和測試等功能。另外,它還是跨平臺(tái)。 Mysql管理工具 Navicat...
閱讀 3589·2021-09-22 10:52
閱讀 1600·2021-09-09 09:34
閱讀 2001·2021-09-09 09:33
閱讀 768·2019-08-30 15:54
閱讀 2687·2019-08-29 11:15
閱讀 726·2019-08-26 13:37
閱讀 1680·2019-08-26 12:11
閱讀 2987·2019-08-26 12:00