如何結合phpstorm配置在docker中的xdebug


作為一個資深的php開發者,我在之前的一篇文章里面也講了如何搭建lnmp的docker鏡像,這里不再贅述。在基於鏡像運行容器中我也安裝了xdebug,於是考慮用phpstorm來配置xdebug。
使用xdebug的好處很多:1.可以讓開發者進行斷點調試。2.並可以收集和顯示運行階段的變量和值。3.減少不必要的代碼調試。這樣php開發者就不用每次手動寫代碼進行斷點調試,不用"var_dump"、"echo" 、"print_r"之類的輸出語句打印變量。而且xdebug還提供了可以step in(步進)到調用函數內部,這樣更方便進行debug。
首先給一個phpstorm和xdebug互相調用的圖:
0
由此可見,需要配置好docker中的xdebug的配置,還有就是IDE中的xdebug相關配置。
1.配置docker中的xdebug。
先進入docker容器,然后使用php --ini命令查找到xdebug的配置文件地址。
用vim打開20-xdebug.conf,增加如下所示的配置:
zend_extension=xdebug.so
[XDebug]
xdebug.start_with_request = yes
;xdebug.remote_handler = "dbgp"
xdebug.remote_connect_back=1
xdebug.remote_enable=1
xdebug.client_host=192.168.3.6
xdebug.remote_port=9003
xdebug.remote_log = "/var/log/dnmp/php.xdebug.log"
xdebug.idekey=PHPSTORM
xdebug.mode=debug
其中xdebug.client_host是xdebug3的新配置, 可以填寫宿主機(就是你真實電腦)的ip,這是關鍵,千萬不要填寫什么172開頭的,那是docker同網段的ip,不是本機真正的ip。如果你是的mac,可以用ifconfig查看你的en0的ip,其他操作系統的命令類似。
然后remote_port就是監聽的端口號,建議用900x端口號,這樣不會和常見已用的端口號重復。完成上面步驟, 記得重啟容器讓配置生效
2.phpstorm的配置很簡單,先選擇ide的preferences,然后選擇debug選項面板,如圖所示。
 
0
然后再配置Server,如下圖所示。
0
最后配置php web page,用上一步配置好的server即可,如下圖所示。
0
然后就可以開始快樂地使用xdebug了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM