使用PHPStorm+XDebug搭建單步調(diào)試環(huán)境
PHP是一個(gè)解釋執(zhí)行的語言,一般來說,進(jìn)行調(diào)試的時(shí)候,只要通過使用 var_dump 或者 var_export 兩個(gè)函數(shù),就可以得到PHP中變量的值,達(dá)到調(diào)試的地步,但是對于大型項(xiàng)目,或者想研究一下別人的代碼時(shí),使用單步調(diào)試會(huì)變得簡單的多。就拿目前最流行的 PHP Laravel 框架為例子,使用 PHPStorm 搭建單步調(diào)試環(huán)境。
PHPStorm安裝和基本配置
PHPStorm下載安裝
PHPStorm除了體積有些大外,算是PHP IDE中非常強(qiáng)大便捷的開發(fā)環(huán)境。官網(wǎng)下載地址:https://www.jetbrains.com/phpstorm/
本站下載地址 點(diǎn)擊下載
PHPStorm激活
安裝之后需要激活,如果經(jīng)濟(jì)能力許可,可以購買正版,當(dāng)然,網(wǎng)上也有很多激活方式。這兒需要提醒的是,如果你激活不了,可是試試在 host 中添加下面這一行 0.0.0.0 account.jetbrains.com
PHPStorm設(shè)置字體大小
打開PHPStorm以后,可以在選擇菜單 File -> Settings -> Editor -> Colors & Fonts -> Font ,在右邊顯示的信息欄中設(shè)置自己習(xí)慣的字體和大小。
PHPStorm導(dǎo)入項(xiàng)目
可以在PHPStorm中選擇:File -> Open,直接打開工作文件夾,一般我喜歡把所有的PHP項(xiàng)目放在一個(gè) PHP_Projects 的文件夾下,然后統(tǒng)一打開,便于開發(fā),一面頻繁切換工作空間。
PHPStorm標(biāo)記項(xiàng)目位置
一般情況下,打開的文件夾下面會(huì)有很多項(xiàng)目,我們需要標(biāo)記這些項(xiàng)目,這樣能夠提供更好的索引和代碼之間關(guān)聯(lián)。
菜單選擇:File -> Settings -> Directories,然后把每個(gè)項(xiàng)目的根目錄標(biāo)記為 Sources。
安裝XDebug擴(kuò)展
下載XDebug擴(kuò)展
為了調(diào)試PHP,我們還需要一個(gè)PHP擴(kuò)展:xDebug,這是一個(gè)非常強(qiáng)大的PHP調(diào)試擴(kuò)展,用來最終PHP執(zhí)行過程,執(zhí)行堆棧等。xDebug官方下載地址:https://xdebug.org/,點(diǎn)擊每個(gè)版本說明中的 download 連接即可進(jìn)入下載頁面,注意這兒需要選擇適合自己系統(tǒng)版本和PHP版本的xdebug擴(kuò)展。
配置xdebug擴(kuò)展
下載之后解壓縮,里面包含一個(gè) dll 格式或者 so 格式的動(dòng)態(tài)鏈接庫,我們把它放在PHP安裝目錄的ext文件夾下,然后配置PHP.ini。需要在PHP最后添加xdebug的配置。
[xdebug] zend_extension="C:\Devlope\wamp\php7.16\ext\php_xdebug-2.5.5-7.1-vc14-x86_64.dll" xdebug.remote_enable=1 xdebug.remote_autostart=1 xdebug.remote_port=9000 # 開啟所有站點(diǎn)xdebug調(diào)試 xdebug.remote_connect_back=1
首先進(jìn)行簡單的配置,xdebug的配置非常豐富,詳細(xì)可以查看官方配置說明文檔:https://xdebug.org/docs/all_settings,配置完成之后,需要保存,然后重啟服務(wù)器(Apache或者nginx),然后在 phpinfo(); 中檢查是否安裝成功。
PHPStorm運(yùn)行調(diào)試配置
PHPStorm服務(wù)器配置
如果跳過這一步,則下一步就需要手動(dòng)添加服務(wù)器。如果在這兒配置了服務(wù)器,就可以在下一步中直接選擇。
PHPStorm選擇菜單:File -> Settings -> Language & Frameworks -> PHP -> Servers,點(diǎn)擊那個(gè)綠色的 + 可以添加一個(gè)服務(wù)器配置,可以配置服務(wù)器的主機(jī)地址,端口一擊調(diào)試器,詳細(xì)可以參考下一步的截圖。
PHPStorm運(yùn)行項(xiàng)目配置
PHPStorm選擇菜單:Run -> Edit Configurations;點(diǎn)擊左上角的 + 添加配置,在候選框中選擇 PHP Web Application,然后點(diǎn)擊添加一個(gè)PHP項(xiàng)目實(shí)例。填寫右邊的相關(guān)信息,Start URL 為你的項(xiàng)目的訪問地址,這個(gè)是需要在你的服務(wù)器(Apache或者nginx)中配置的。Server哪兒點(diǎn)擊右邊的三個(gè)點(diǎn),可以添加一個(gè)服務(wù)器實(shí)例,注意填寫的Host需要相同。
PHPStorm調(diào)試配置
PHPStorm選擇菜單:File -> Settings -> Language & Frameworks -> PHP -> Debug,點(diǎn)擊Debug這一項(xiàng),可以看到Debug的配置,一般這兒不用修改,只需要注意Debug port需要和你在PHP.ini中配置的port一致,并且勾選Can accept external connections。
PHPStorm進(jìn)行單步調(diào)試
一切就緒,接下來就是單步調(diào)試了??梢酝ㄟ^點(diǎn)擊PHPStorm中代碼左邊的位置設(shè)置斷點(diǎn),現(xiàn)在我們可以在 Laravel 網(wǎng)站根目錄 Public 下的 index.php 開頭設(shè)置一個(gè)斷點(diǎn),然后選擇PHPStorm菜單:Run -> Debug "alaim" 進(jìn)行調(diào)試,可以看到PHPStorm底部的信息框中答應(yīng)出了所有變量的值。
F8:單步,不跳入函數(shù)
F7:執(zhí)行跳指令,跳入函數(shù)
Shift+F8:跳出函數(shù)
Alt+9:運(yùn)行到指針處
相關(guān)文章
PHP對二維數(shù)組(多維數(shù)組)進(jìn)行排序的方法
在 PHP 中,可以使用函數(shù) array_multisort() 來對二維數(shù)組進(jìn)行排序處理,該函數(shù)可以按照指定的鍵或值對數(shù)組進(jìn)行排序,本文通過一個(gè)示例來給大家介紹一下PHP如何對二維數(shù)組(多維數(shù)組)進(jìn)行排序,需要的朋友可以參考下2023-09-09php關(guān)聯(lián)數(shù)組與索引數(shù)組及其顯示方法
下面小編就為大家分享一篇php關(guān)聯(lián)數(shù)組與索引數(shù)組及其顯示方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-03-03php實(shí)現(xiàn)的XML操作(讀取)封裝類完整實(shí)例
這篇文章主要介紹了php實(shí)現(xiàn)的XML操作(讀取)封裝類,給出了xml格式文件示例,并結(jié)合完整實(shí)例形式分析了php遍歷讀取xml格式數(shù)據(jù)節(jié)點(diǎn)的相關(guān)操作技巧,需要的朋友可以參考下2017-02-02解析php做推送服務(wù)端實(shí)現(xiàn)ios消息推送
本篇文章是對php做推送服務(wù)端實(shí)現(xiàn)ios消息推送的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-07-07redis+php實(shí)現(xiàn)微博(二)發(fā)布與關(guān)注功能詳解
這篇文章主要介紹了redis+php實(shí)現(xiàn)微博發(fā)布與關(guān)注功能,結(jié)合實(shí)例形式分析了php結(jié)合redis實(shí)現(xiàn)微博的發(fā)布及關(guān)注相關(guān)操作技巧,需要的朋友可以參考下2019-09-09ThinkPHP3.2.3所有的單字母方法整理總結(jié)
ThinkPHP3.2.3在以前是一款廣受歡迎的PHP開發(fā)框架,現(xiàn)在雖然除了版本5和6,但仍有不少項(xiàng)目使用ThinkPHP3。ThinkPHP3中的字母函數(shù)是以字母開頭的一類函數(shù),其作用是非常豐富的,包括字符串處理、文件處理、日期時(shí)間處理以及HTTP協(xié)議處理等。2023-07-07php安裝php_rar擴(kuò)展實(shí)現(xiàn)rar文件讀取和解壓的方法
這篇文章主要介紹了php安裝php_rar擴(kuò)展實(shí)現(xiàn)rar文件讀取和解壓的方法,涉及php擴(kuò)展組件的安裝與使用相關(guān)操作技巧,需要的朋友可以參考下2016-11-11