您好,登錄后才能下訂單哦!
這篇文章主要介紹“PhpStrom如何使用Xdebug擴展”,在日常操作中,相信很多人在PhpStrom如何使用Xdebug擴展問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”PhpStrom如何使用Xdebug擴展”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
1、下載xdebug
#wget https://xdebug.org/files/xdebug-2.7.2.tgz
2、解壓xdebug
#tar xvf xdebug-2.7.2.tgz
3、準備PHP擴展庫的編譯環境
#cd xdebug-2.7.2 //準備PHP擴展庫的編譯環境 #phpize
如果提示不存在此命令,可以到php目錄中找到該命令的絕對路徑,然后執行。
4、編譯安裝
//配置 #./configure --enable-xdebug --with-php-config=/usr/local/php/bin/php-config //編譯安裝 #make&&make install
5、配置php.ini
zend_extension=xdebug.so #增加xdebug擴展 xdebug.remote_enable = 1 #是否開啟遠程 xdebug.remote_autostart=On #開啟遠程調試自動啟動 xdebug.remote_host=192.168.109.103 #這是你的客戶端ip xdebug.remote_port = 9001#遠程端口(可以自己隨意配置) xdebug.collect_params=On #收集參數 xdebug.collect_return=On #收集返回值 xdebug.profiler_enable=On #啟用性能檢測分析 xdebug.trace_output_dir="/tmp/xdebug_profiler" #指定堆棧跟蹤文件的存放目錄 xdebug.profiler_output_name = cachegrind.out.%t.%p #跟蹤轉儲到的文件的名稱 xdebug.profiler_output_name="cachegrind.out.%p" #確定用于將跟蹤轉儲到的文件的名稱
6、查看xdebug擴展是否安裝成功
#php -m
看到xdebug,說明安裝成功
1、打開PhpStrom》Preferences》PHP》Debug
2、打開PhpStrom》Preferences》PHP》Server
3、右上角
4、開啟Xdebug
5、設置斷點、發送請求
6、相信有很多小伙伴發現,自己的PhpStrom并沒有監聽到自己發送的請求。出發PhpStrom的debug有兩種方式:
(1)GET、POST請求中需要存在XDEBUG_SESSION_START參數或者cookie里存在XDEBUG_SESSION,這個值隨意(細心的小伙伴應該會看見我在配置請求類別的時候,約定了一個IDE key)。
GET、POST會生成cookie XDEBUG_SESSION,有效期為1個小時(可修改php.ini配置)。
網頁上的web請求,大家可以下載Xdebug相關的瀏覽器插件,比如Xdebug helper,它里邊附加的有IDE key配置,只需與我們在PhpStrom中配置的一致即可。
(2)我們還可以在php.ini中添加如下一行配置:
xdebug.remote_autostart = 1
此時便無需設置GET、POST、cookie
7、剛剛我舉例的是,請求一個接口,請求時添加了cookie,XDEBUG_SESSION=PHPSTROM。如果我用第一種方式,并且是網頁請求,非得添加這個配置嗎?當然不是,看下邊:
在你要請求的頁面打上斷點,然后在瀏覽器中輸入請求url(記得開啟PhpStrom的debug)
再看你的PhpStrom,它已經顯示出Xdebug收集的信息了
到這里,PhpStrom配置Xdebug就完成了,相信大家看到了在PhpStrom中展示的信息旁邊有很多小按鈕,沒錯,那就是一些調試工具,下邊就來逐個介紹一下。
說明:以下摘自PHPstorm官網的debug幫助手冊:
由于以下Xdebug相關功能按鈕貼圖展示每個功能不易明白。以下序號對應紅框中順序按鈕的功能,小伙伴們可以按照下邊實際操作一遍。
先從左邊紅框中的功能按鈕開始逐個介紹:
(1)重新執行:點此按鈕會停止當前的請求并在此運行
(2)調試:當前應用程序停止時,單擊此按鈕再次調試它。
(3)暫停程序:單擊此按鈕可暫停程序執行
(4)停止:單擊此按鈕可通過標準shutdown 腳本在外部終止當前進程
(5)查看斷點:單擊此按鈕可打開“ 斷點”對話框,你可以在其中配置斷點行為
前五個是最常用的,后邊四個不常用,這里不再詳細說明。
然后再從左到右介紹一下上邊紅框中按鈕的作用:
(1)顯示執行點:單擊此按鈕可突出顯示編輯器中的當前執行點
(2)跳過:單擊此按鈕執行程序,直到當前方法或文件中的下一行,跳過當前執行點(如果有)引用的方法。如果當前行是方法中的最后一行,則執行步驟到此方法之后執行的行。
(3)進入:單擊此按鈕可使調試器步入當前執行點調用的方法
(4)強制進入:單擊此按鈕可使調試器步進到當前執行點中調用的方法中,即使要跳過此方法也是如此
(5)跳出:單擊此按鈕可以將調試器步驟從當前方法中移出,直到它之后執行的行
(6)運行到光標:這個實際操作的時候,你會發現,當你打了多個斷點時,點擊此按鈕,它會跳到下一個斷點處
(7)評估表達:單擊會出現評估表達式對話框
1、向php發送一個請求
2、php執行過程中遇到斷點,Xdebug收集請求信息(這個我們在php.ini中會配置收集哪些信息,比如請求參數、返回值等)
3、Xdebug將收集到的信息發送到它配置的遠程IP(包括端口,這些我們在php.ini中都有配置)
4、我們在配置PhpStrom的Xdebug時,配置了它監聽Xdebug中配置的端口,所以PhpStrom會收到Xdebug收集到的信息
5、PhpStrom展示出接收到的Xdebug信息
到此,關于“PhpStrom如何使用Xdebug擴展”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。