使用的是先後端分離的開發方式,vue 在 webpack 經過代理進行請求轉接,以前在使用 node 開發的時候進行斷點調試可以根據請求的接口到達斷點地方,按步查詢代碼的執行。然而在 php 對接口的調試就不是那麼舒服了,目前的框架內部只實現了錯誤日誌打印,很差更準確的定位問題的所在,因而就開始了先後端分離狀況下 php 調試代碼探尋。php
安裝 xdebug helper
而後在選項中獎 IDE key 設置爲 phpstormvue
先在 phpstudy 中: 配置文件->php 擴展與設置中->php 擴展->Xdebug 打開
node
打開 php.iniwebpack
[XDebug] xdebug.profiler_output_dir="D:\phpStudy\PHPTutorial\tmp\xdebug" xdebug.trace_output_dir="D:\phpStudy\PHPTutorial\tmp\xdebug" xdebug.remote_log="D:\phpStudy\PHPTutorial\tmp\xdebug.log" zend_extension="D:\phpStudy\PHPTutorial\php\php-7.0.12-nts\ext\php_xdebug.dll" xdebug.remote_enable =1 xdebug.remote_handler = "dbgp" xdebug.idekey = PHPSTORM xdebug.remote_host = "127.0.0.1" xdebug.remote_port = 9000
該開啓的開啓,該添加的添加,注意路徑正確,根據我的路徑更改web
在 setting->Languages and Frameworks->PHP
這是已經添加好的,沒有配置過須要講 php.exe 路徑添加一下
ajax
PHP->debug
chrome
這裏 debug port 設置爲 php.ini 裏面設置的那個端口後端
PHP->debug->DBGp proxy
api
PHP->Servers
瀏覽器
頭部導航->Run->Edit Configurations
按照預設模板
在目錄下的 index.php 打個斷點
點擊甲蟲開啓調試,點擊電話開啓監聽
這時候你的默認瀏覽器會自動打開一個 tab
而後打開 phpstorm 能夠看到斷點已經生效了
斷點
在 model 下的 mine_date 中打一個斷點
請求地址
能夠看到可以訪問,可以獲取數據,可是並無走 debug,斷點不生效
在開啓調試的時候,會在默認瀏覽器打開一個 tab,這個網址http://api.h5.com:5555/?XDEBUG_SESSION_START=12087,能夠進入調試,那將?XDEBUG_SESSION_START=12087放到postman請求的網址後面就行了
進入 loading 了,很是好
能夠看到,進入到 model 裏面的 mine_date 這個方法裏面了,斷點生效了
而後 ajax 請求接口
php 進入調試