本篇文章給大家介紹一下在vscode中使用xdebug調(diào)試PHP的方法。有一定的參考價(jià)值,有需要的朋友可以參考一下,希望對(duì)大家有所幫助。
調(diào)試分兩種:本地調(diào)試和遠(yuǎn)程調(diào)試
【推薦學(xué)習(xí):《vscode基礎(chǔ)教程》、《PHP視頻教程》】
本地調(diào)試
本地調(diào)試需要前提:
-
第一、php安裝xdebug擴(kuò)展。如果已經(jīng)安裝過(guò)php,可以使用php -m | grep xdebug來(lái)檢查是否安裝了xdebug。
沒(méi)有安裝xdebug,可以使用 apt-get install php-xdebug 來(lái)安裝。
然后使用php –ini找到php.ini文件的位置。
然后修改php.ini文件在里面添加下面兩行
xdebug.remote_enable = 1 xdebug.remote_autostart = 1
如果是在docker里面沒(méi)有vim,可以用 apt-get install vim 來(lái)安裝vim。
-
第二、vscode安裝PHP Debug擴(kuò)展。
然后在vscode的settings.json文件里面添加本機(jī)的PHP的執(zhí)行路徑,linux系統(tǒng)可以用whereis php來(lái)查找php命令的路徑:
然后打開(kāi)launch.json文件:
里面已經(jīng)有了默認(rèn)添加的9000端口的xdebug監(jiān)聽(tīng)。
此時(shí)在php文件某一行加斷點(diǎn)就可以了.
遠(yuǎn)程調(diào)試
調(diào)試遠(yuǎn)程主機(jī)上的PHP項(xiàng)目,需要改動(dòng)三個(gè)地方:
第一、修改遠(yuǎn)程主機(jī)上的xdebug.ini文件
使用 php –ini找到xdebug.ini的位置:
php –ri xdebug 可以查看xdebug.ini文件的內(nèi)容,如果你的xdebug.ini配置在php.ini里面那就修改php.ini。
將對(duì)應(yīng)的remote_host和remote_port改成你自己的ip和端口。比如說(shuō)這里的端口是9020。
第二、修改vscode中的launch.json文件
在vscode的launch.json文件中新增對(duì)9020端口的監(jiān)聽(tīng)配置,例如:
里面的name隨便起,要把port設(shè)置成遠(yuǎn)程對(duì)應(yīng)的端口,pathMappings設(shè)置成自己項(xiàng)目對(duì)應(yīng)的目錄。
第三、打開(kāi)自己電腦的遠(yuǎn)程調(diào)試接口
比如我這里的調(diào)試端口是9020,打開(kāi)防火墻的高級(jí)設(shè)置:
然后在新建規(guī)則里面添加對(duì)9020端口的支持:端口->TCP->特定端口的支持9020->一直下一步就可以了,出站規(guī)則里也可以添加對(duì)9020端口的支持。
到此就配置成功了。此時(shí)添加斷點(diǎn),運(yùn)行遠(yuǎn)程項(xiàng)目就可以看到已經(jīng)在本地?cái)嘧×耍旅婢褪情_(kāi)心地找bug了:)。