phpstorm進行動態除錯

高人于斯發表於2024-05-26

php遠端除錯配置

xdebug配置

先下載xdebug,看phpinfo內容選版本

QQ截圖20240513165331

ctrl+a全選phpinfo後複製去識別即可(Xdebug: Support — Tailored Installation Instructions

QQ截圖20240513165923

下載後,放入php\ext目錄裡面,

一般教程都是直接去php.ini直接加資訊,但其實可以先不急,

去phpstudy先選上擴充套件

QQ截圖20240513193009

勾上xdebug,然後再次檢視php.ini資訊時,裡面便會有Xdebug的配置,只不過其引用的是下載自帶的php-xdebug.dill檔案。

內容如下:

[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=Off
xdebug.trace_output_dir=D:/phpstudy_pro/Extensions/php_log/php7.3.4nts.xdebug.trace
xdebug.profiler_enable=Off
xdebug.profiler_output_dir=D:/phpstudy_pro/Extensions/php_log/php7.3.4nts.xdebug.profiler
xdebug.remote_enable=Off
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.remote_handler=dbgp

然後更改如下:

[xdebug]
zend_extension=D:/phpstudy_pro/Extensions/php/php7.3.4nts/ext/php_xdebug-3.1.6-7.3-vc15-nts-x86_64.dll
;用於zend studio遠端除錯的應用層通訊協議
xdebug.remote_handler = dbgp
xdebug.collect_vars = On
;客戶機xdebug監聽埠和除錯協議
xdebug.client_port = 9001
xdebug.mode=debug
;客戶機ip
xdebug.remote_host=127.0.0.1
xdebug.idekey="PHPSTORM" 
xdebug.profiler_enable= On
xdebug.auto_trace=On
xdebug.collect_return=On
xdebug.collect_params=On
xdebug.auto_trace="On"
xdebug.show_exception_trace="On"
xdebug.remote_autostart="On"

這時在檢視phpinfo

QQ截圖20240513193335

發現版本變為了3,但同時有些命名不可用會報錯,不必理會。

以上差不多就是phpstudy中xdebug的配置了

phpstorm配置

一、第一個埠配置

QQ截圖20240513193543

二、ide鍵值

QQ截圖20240513193636

然後在建立個伺服器,這裡的埠要和phpstudy上對應,名字隨便。

QQ截圖20240513200028

然後在選擇剛剛配好的伺服器,

QQ截圖20240513200130

在除錯之前可以進行驗證

QQ截圖20240513200652

一般這樣就行了

試試效果:

QQ截圖20240513200823

對於除錯超時解決辦法:

1、php.ini 設定xdebug及max_execution_time等, 增加等待時間

# 超時時間改大一點
xdebug.remote_cookie_expire_time = 3600
max_execution_time=3600
max_input_time=3600
default_socket_timeout = 3600

2、在apache配置檔案httpd.conf,增加程式執行等待時間

# 超時時間改大一點
Timeout 3600
FcgidIOTimeout 3600
FcgidIdleTimeout 3600
IPCConnectTimeout 3600
IPCCommTimeout 3600

相關文章