在編寫PHP程序時,錯誤和調試是不可避免的。Debug工具是程序員的必備工具之一。而Editplus是一款非常適合PHP編程的文本編輯器,它還帶有調試功能,方便于程序員調試PHP代碼,快速定位和解決問題。
首先需要在Editplus中進行一些簡單的配置:
Tools ->Preference ->General ->Web Browser ->PHP INI file location
1. 騰訊云SSH連接的調試
比如說我們在騰訊云上搭建了一個網站,需要使用SSH連接,那么我們可以通過以下方式在Editplus上啟動Xdebug:
[遠程服務器端所需步驟] 1)在php.ini文件中設定xdebug配置信息: [xdebug] zend_extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20160411/xdebug.so xdebug.remote_autostart=1 xdebug.remote_enable=1 xdebug.remote_handler="dbgp" xdebug.remote_mode=req xdebug.remote_host=你開發機的IP xdebug.remote_port=9000 2)重新啟動Nginx [本地電腦端所需步驟] 1)下載Xdebug的插件(插件地址:https://xdebug.org/download.php) 2)安裝完畢后Editplus會在Tools工具條選項中新增PHP Debugger按鈕 3)設置Xdebug的本地參數: Tools ->Debugger Configuration ->PHP ->Server: Server Name : 編寫本地網站的Server Name(可以自定義) Address : 編寫本地網站的網址 如果你本地開發環境是通過虛擬機的方式搭建PHP環境的,那么還需要設置: Tools ->Debugger Configuration ->PHP ->Directories Source Directory:虛擬機上的地址(可以通過vinfo來查看) 4)接下來你就可以在本地啟動Editplus的Xdebug,并通過瀏覽器訪問遠程服務器,就可以愉快的進行PHP調試了。
2. 本地環境下如何啟動Xdebug
本地環境下使用WAMP、XAMPP或者其他wedi環境,需要進行以下配置:
[Xdebug] zend_extension=E:\wamp\bin\php\php7.0.10\ext\php_xdebug.dll ;xdebug.remote_autostart=1 # autostart xdebug xdebug.remote_enable=1 # enable remote debugging xdebug.remote_handler="dbgp" # use debugger protocol xdebug.remote_mode=req xdebug.remote_host=127.0.0.1 # localhost xdebug.remote_port=9000 # debugger port, use 9000 by default xdebug.idekey=PHPSTORM
配置完畢后,需要重啟WAMP,接著在Editplus中開啟PHP Debugger就可以愉快的進行調試了。
3. 怎樣通過Xdebug調試PHP代碼
在本地配置完畢Xdebug之后,如何使用Xdebug來調試PHP代碼呢?
1)在你需調試的php文件中,設置中斷點,也就是所謂的斷點。 可以通過點擊行號來設置中斷點,中斷點行號上方會出現一個空心紅圓圈。 2)最后,在瀏覽器中輸入 127.0.0.1/你的調試文件.php 即可開始調試?;蛘?,你可以在工具條中點擊"Run PHP Debugger"來啟動調試。啟動后,Editplus會進入中斷狀態,代碼執行會在中斷點處停止。 3)在中斷狀態下,Editplus中的調試控制臺會呈現出調試信息,包括當前轉到的代碼行,調用堆棧,變量值以及響應內容等??梢栽谡{試界面中進行查看和修改變量、繼續執行代碼或者單步調試等。 4)如果想結束調試,可以在調試界面的工具條上選擇 "Detach Debugger",這會使程序重新恢復執行,也可以關閉Editplus軟件結束調試進程。
4. Debug輸出結果的收集
接下來介紹一個非常有用的小技巧:將所有的debug輸出結果都收集到一個文件中,方便調試。
這樣就可以將所有的debug輸出結果都記錄到某個指定的文件中,便于查閱和調試。
Editplus的PHP調試功能讓程序員能夠快速定位和解決問題,避免了無謂的調試時間浪費。同時,隨著使用的經驗的不斷積累,代碼的質量和編寫效率也會有很大的提升。希望這篇文章對大家能夠有所幫助。