前言
php是腳本型程序 每次出錯都要手動exit斷點程序不是很方便
哪里有需求哪里就有生產,Xdebug可以實現對php的斷點調試。下面將我個人的安裝經歷分享給大家。
運行環境 windows 、lamp、phpstorm 、chrome (配置方法一樣 Ubuntu也通用)
一、首先安裝xdebug
安裝xdebug比較簡單 ,運行php -i >phpinfo.txt 或者 echo phpinfo();將全部信息貼到https://xdebug.org/wizard.php這個網站提示的文本域中點擊
如下圖紅色的框是網站提示的安裝步驟,黃色的框是我已安裝的信息(可以忽略)。
補充在編輯php.ini文件的時候多添加幾行
[Xdebug]
zend_extension = "H:\install\phpstudy_pro\Extensions\php\php7.3.4nts\ext\php_xdebug-2.9.4-7.3-vc15-nts-x86_64.dll"
xdebug.idekey="PHPSTORM"
xdebug.remote_handler = "dbgp"
xdebug.remote_mode = "req"
xdebug.remote_host=127.0.0.1
xdebug.remote_enable=on
xdebug.remote_port = 9100 //這是設置端口 可以改 只要下面這是phpstorm 一致就可以
xdebug.remote_autostart = no
二、安裝chrome xdebug helper插件
打開 chrome的webstore搜索 xdebug 我已經添加了。需要翻牆 可以下個vpn 藍燈 慕風都可以 或者配置host
安裝完之后 瀏覽器會有一個小甲蟲 右擊點擊選項 選擇phpstorm 點擊save退出
備注:
安裝完 可以打印phpinfo 查看xdebug信息 ,或者php -v 查看下有沒有xdebug信息
三、配置phpstorm
1、servers設置
菜單欄 file->setting->php->servers(找不到可以搜索server就出來了)
2、php設置 選擇自己的php版本(注如果遇到圖2這種情況點擊標記的按鈕找到自己的php.exe文件即可)
3 設置debug 勾選一下 會忽略端口沖突等信息
4 設置dbgp
IDE key 是上面php.ini里面設置的key
這邊配置localhost 就行,具體的debug項目域名再run那邊配置
5 編輯結構選擇一下自己配置的域名 startUrl 可以根據自己的項目配置 我的域名已經指向項目根目錄了 所有直接是/
四、啟用xdebug
1、點擊phpstorm右上角的電話 綠色波紋就是開始監聽了
2、右擊瀏覽器右上角的小甲蟲 選擇debug
3、設置斷點
4、訪問設置斷點的控制器 phpstorm會彈出調試信息 可以點擊小綠三角 調試下一個斷點
五、其他情況說明
1、端口占用(9000 port is busy)
解決方法:更換端口
那就編輯php.ini換個端口對應的 file->setting->php-> debug 也要換掉
重新啟動下php 再調試看看。
2、無法映射到服務器文件(file path is not mapped to any file path on server. edit path mappings to fix the problem)
解決方法:配置項目在服務器的絕對路徑
3、調試總是斷點在index.php 的第一行
附上phpstorm 官方配置說明:
https://blog.jetbrains.com/webide/2011/03/configure-php-debugging-in-phpstorm-2-0/