PhpStorm2020 + phpstudyV8 +XDebug的教程詳解
WNMP(Windows+Nginx+Mysql+Php)環(huán)境安裝操作:
1、安裝phpStudy
1.1、下載phpStudy
下載地址:www.xp.cn/
解壓后運(yùn)行exe進(jìn)行安裝,我的安裝目錄是:D:\phpstudy_pro
1.2、配置環(huán)境:
在桌面啟動小皮進(jìn)行配置,我的配置如下:
首頁面板:啟動"WNMP"

網(wǎng)站面板:PHP版本

環(huán)境面板:數(shù)據(jù)庫、PHP運(yùn)行環(huán)境

2、安裝PhpStorm2020
2.1、下載phpStudy
下載地址:https://blog.jetbrains.com/phpstorm/2020/03/phpstorm-2020-1-beta/
我使用的是缺省目錄進(jìn)行安裝,如何激活在這就不詳細(xì)說了。
2.1、配置PHP版本信息
我們點(diǎn)擊“File->Settings”菜單進(jìn)行PHP版本配置,使用和phpstudy對應(yīng)的版本PHP7.3.4。

注意:Interpreter默認(rèn)是沒有的,我們需要點(diǎn)擊右邊的按鈕進(jìn)行配置。


3、新建測試工程
3.1、使用PhpStorm新建工程"HelloPHP"
第一步:打開PhpStorm軟件,點(diǎn)擊創(chuàng)建新項(xiàng)目,在輸入框填寫帶項(xiàng)目存放地址的項(xiàng)目名稱,完成后點(diǎn)擊創(chuàng)建。
3.2、配置工程的本地服務(wù)
我們點(diǎn)擊“工具/部署/配置”菜單進(jìn)行本地服務(wù)配置



點(diǎn)擊確定后進(jìn)行具體配置:
Connection面板:配置部署目錄

Mappings面板:配置相對目錄和訪問地址

配置完之后點(diǎn)擊“確定”。
3.3、配置運(yùn)行環(huán)境
我們點(diǎn)擊“運(yùn)行/編輯配置”菜單進(jìn)行運(yùn)行環(huán)境配置



3.4、創(chuàng)建PHP文件
選擇工程,單擊右鍵->New->PHP File

輸入文件的名稱,點(diǎn)擊確定增加PHP文件

在新建的文件里輸入代碼:
<?php echo "Hello PHP!"; // 在頁面上輸出“Hello PHP!” phpinfo(); // 調(diào)用PHP內(nèi)置的函數(shù)顯示PHP的基本信息
3.5、部署工程
在菜單中選擇Tools->Deployment->Upload to localhost上傳工程。

上傳成功后,下方控制臺顯示上傳的具體信息:

我們在phpstudy的www/HelloPHP目錄下可以找到剛才上傳的Index.php文件

3.6、運(yùn)行Hello PHP
點(diǎn)擊頁面中懸浮的瀏覽器運(yùn)行頁面

我們來看看效果:

到這,我們完成了PHPStudy+PHPStorm配置和HelloPHP的運(yùn)行,但是到目前為止PHPStorm只是承擔(dān)了編輯器和部署的功能,沒法直接調(diào)試,下面我們就來完成在PHPStorm進(jìn)行單步調(diào)試。
4、調(diào)試Hello PHP
4.1、瀏覽器和插件
1)瀏覽器我們使用chrome,下載地址:https://www.google.com/chrome/;
2)配合chrome的插件我們使用xdebug,安裝完成在瀏覽器地址欄的右側(cè)能夠看到一只小爬蟲,點(diǎn)擊后如下圖所示:

我們選擇Debug,就會通知我們的開發(fā)環(huán)境進(jìn)行調(diào)試,選擇disable,就會直接運(yùn)行。
我們可以在xdebug helper中配置它,選擇phpstorm并且在右邊的框中填入phpstorm-xdebug。


到這里,我們可以phpstorm中設(shè)置斷點(diǎn),然后使用瀏覽器的xdebug helper開啟頁面調(diào)試。
4.2、在php.ini文件的末尾添加如下配置:
[Xdebug] zend_extension=D:/phpstudy_pro/Extensions/php/php7.3.4nts/ext/php_xdebug.dll xdebug.collect_params=1 xdebug.collect_return=1 xdebug.auto_trace=On xdebug.trace_output_dir=D:/phpstudy_pro/Extensions/php_log/php7.3.4nts.xdebug.trace ;設(shè)置的函數(shù)調(diào)用監(jiān)測信息的輸出路徑 ;xdebug.profiler_enable=On ;效能監(jiān)測的設(shè)置開關(guān) xdebug.profiler_enable = 1 xdebug.profiler_enable_trigger = 0 xdebug.profiler_output_dir="D:\phpstudy_pro\Extensions\tmp\xdebug" ;profiler_enable設(shè)置為1的時(shí)候,效能監(jiān)測信息寫入文件所在的目錄 xdebug.remote_host = "localhost" xdebug.remote_port=9090 xdebug.remote_handler="dbgp" xdebug.profiler_append = 0 xdebug.remote_enable=On xdebug.idekey=phpstorm-xdebug xdebug.profiler_output_name ="cache.out.%t-%s" ;生成的效能監(jiān)測文件的名字
4.3、在PhpStorm配置Debug:
1)選擇File->Settings->Languages&Frameworks->PHP>Debug,找到XDebug選項(xiàng)卡,Debug port 輸入的是剛剛php.ini配置文件當(dāng)中xdebug.remote_port的值,具體配置如下圖:

2)選擇File->Settings->Languages&Frameworks->PHP->Debug->DBGp Proxy,
IED key輸入剛剛php.ini文件中xdebug.idekey的值,Host、Port是File->Settings->Languages&Frameworks->PHP->Servers中設(shè)定的Host、Port值,具體配置如下圖:

4.4、開啟XDebug調(diào)試
在phpStorm里打開監(jiān)聽,就是一個(gè)電話一樣的按鈕,點(diǎn)擊變?yōu)榫G色,在程序代碼點(diǎn)前點(diǎn)擊,設(shè)置程序段點(diǎn),點(diǎn)擊綠色的debug爬蟲按鈕,chrome瀏覽器打開xdebug頁,phpStorm出現(xiàn)debug窗口,并獲取到variables值

5、錯(cuò)誤處理
5.1 PHP Warning: Xdebug MUST be loaded as a Zend extension in Unknown on line 0
原因1:
remote_port我們使用的是9090,默認(rèn)使用的是9000。由于9000端口會被nginx占用做代理,如果被占用,就會導(dǎo)致php無法調(diào)試。
原因2:
phpStudy集成XDebug擴(kuò)展,我們在PHP擴(kuò)展中選擇php_xdebug時(shí)會出現(xiàn)上述錯(cuò)誤,個(gè)人分析:可能是因?yàn)閜hp.ini中配置的zend_extension和選項(xiàng)有沖突。

到此這篇關(guān)于PhpStorm2020 + phpstudyV8 +XDebug的教程詳解的文章就介紹到這了,更多相關(guān)PhpStorm2020 phpstudyV8 XDebug內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
laravel框架學(xué)習(xí)筆記之組件化開發(fā)實(shí)現(xiàn)方法
這篇文章主要介紹了laravel框架學(xué)習(xí)筆記之組件化開發(fā)實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了laravel框架組件化開發(fā)相關(guān)的實(shí)現(xiàn)步驟與操作注意事項(xiàng),需要的朋友可以參考下2020-02-02
PHP網(wǎng)頁游戲?qū)W習(xí)之Xnova(ogame)源碼解讀(十)
這篇文章主要介紹了PHP網(wǎng)頁游戲Xnova(ogame)源碼解讀的建造總覽部分,需要的朋友可以參考下2014-06-06
Laravel學(xué)習(xí)教程之從入口到輸出過程詳解
這篇文章主要給大家介紹了關(guān)于Laravel學(xué)習(xí)教程之從入口到輸出過程的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-08-08
基于 Swoole 的微信掃碼登錄功能實(shí)現(xiàn)代碼
隨著微信的普及,掃碼登錄方式越來越被現(xiàn)在的應(yīng)用所使用。它因?yàn)椴挥萌ビ涀∶艽a,只要有微信號即可方便快捷登錄.這里基于微信公眾平臺的帶參數(shù)臨時(shí)二維碼,并且結(jié)合 Swoole 的 WebSocket 服務(wù)實(shí)現(xiàn)掃碼登錄2018-01-01
PHP依賴倒置(Dependency Injection)代碼實(shí)例
這篇文章主要介紹了PHP依賴倒置(Dependency Injection)代碼實(shí)例本文只提供實(shí)現(xiàn)代碼,需要的朋友可以參考下2014-10-10
php循環(huán)table實(shí)現(xiàn)一行兩列顯示的方法
這篇文章主要介紹了php循環(huán)table實(shí)現(xiàn)一行兩列顯示的方法,本文直接給出實(shí)現(xiàn)代碼,重點(diǎn)就是在取余方法的運(yùn)用,需要的朋友可以參考下2015-06-06
php遞歸函數(shù)三種實(shí)現(xiàn)方法及如何實(shí)現(xiàn)數(shù)字累加
實(shí)現(xiàn)遞歸函數(shù)有哪些方法呢?如何用遞歸函數(shù)實(shí)現(xiàn)數(shù)字累加?這篇文章就主要介紹php遞歸函數(shù)三種實(shí)現(xiàn)方法及如何實(shí)現(xiàn)數(shù)字累加,需要的朋友可以參考下。2015-08-08

