十分鐘搞定mac下的phpstorm增加xdebug調試

来源:http://www.cnblogs.com/spareribs/archive/2017/06/27/7084828.html
-Advertisement-
Play Games

一、版本信息 mac 10.10.5 php 5.5.38 phpstorm 10.0.3 xdebug 版本需要與php匹配,匹配地址 :點我匹配 點我查看所有版本 提示:不確定xdebug版本的,把phpinfo()顯示的全部複製(command+a 全選再command+c複製)到文本框中,x ...


一、版本信息

mac 10.10.5

php  5.5.38

phpstorm 10.0.3

xdebug   版本需要與php匹配,匹配地址 :點我匹配  點我查看所有版本

提示:不確定xdebug版本的,把phpinfo()顯示的全部複製(command+a 全選再command+c複製)到文本框中,xdebug會自動跳轉到下載配置頁面,按頁面提示流程安裝即可。

二、安裝xdebug

1、點擊匹配地址,把複製的phpinfo信息粘貼到文本框。

2、按照頁面的安裝流程安裝xdebug。

3、配置php.ini

提示:xdebug官網上的配置,只保證配置好xdebug,但不能與phpstorm進行配置,正確的配置方法,在添加xdebug模塊下添加以下代碼。

[xdebug]
zend_extension = /usr/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so  //這是配置xdebug
xdebug.remote_enable = On  //是否運行遠程終端,必須開啟
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "localhost"
xdebug.remote_port = 9000  //這個埠號要和phpstorm中的保持一致,示例的埠是9001
xdebug.idekey = PHPSTROM  //調試器關鍵字

  安裝xdebug圖例:

  (1)

  (2)

4、查看phpinfo( ),有沒有開啟xdebug。

三、配置phpstorm以支持xdebug

1、點擊左上角phpstorm,選擇preferences。

2、配置php下的Debug

3、配置Debug下的DBGp proxy

4、配置servers

5、點擊phpstorm右上角的三角形,選擇Edit Configurations,配置伺服器信息,添加項目調試開發地址,保存完後phpstorm配置完成。

(1)

(2)

(3)

四、chrome安裝xdebug

xdebug for chrome  (chrome插件商店,需要梯子)

配置xdebug 插件(可省略)

五、斷點程式調試

1、在需要調試的代碼左側空白左鍵點擊打上紅色圓形按鈕,再點擊紅色按鈕取消。

2、點擊phpstorm右上角甲殼蟲按鈕打開瀏覽器,要保證旁邊的電話圖標是綠色的,紅色的表示關閉調試,程式運行到該斷點時(不包括當前斷點行),會停留並從瀏覽器頁面返回到phpstorm,此時瀏覽器會一直處於載入等待中。

 

3、瀏覽器跳轉打開phpstorm後,頁面上和debugger框會有數據信息顯示,如下圖。

代碼頁面:

debugger框:

六、調試過程中警告提示

上圖彈窗是程式正在調試時,試圖關閉phpstorm時的提示,這個時候可以完成調試再關閉,或者結束調試再關閉。

 

至此,mac下的phpstorm添加xdebug就結束了,祝大家敲一手風騷無bug的好代碼!!!


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • String、List、Hash、Set、Sorted Set、Bitmap ...
  • 【問題一】 在使用MySQLWorkbench插入數據時,只要涉及字元串的插入就無法運行。 如下: Error Code: 1366. Incorrect string value: '\xE5\xBC\xA0\xE4\xB8\x89' for column 'name' at row 1 【問題二 ...
  • 數據表:數據表(或稱表)是資料庫最重要的組成部分之一,是其他對象的基礎。 1、首先我們打開一個資料庫(這裡我打開的是新創建的一個aaa資料庫)。 打開資料庫:use + 資料庫名; 2、開始創建一個表,表名定為tb1。 行稱之為記錄,列稱之為欄位。 創建一個為名字、年齡、工資的表 VARCHAR 為 ...
  • 沒錯,這又是我從我的OneNote上複製過來的,於是又變成了一張好長好長的圖片。我能怎麼辦,我也很絕望, 感興趣就湊合看吧。 現在開發項目基本上持久層都是用框架(hibernate或者mybatis),所以呢,這個東西基本上用不到,既然有大神封裝的非常好,我們為什麼要自己寫呢。但是, 這個可以幫助我 ...
  • ---查看所有存儲過程或視圖的位置 select a.name,a.[type],b.[definition] from sys.all_objects a,sys.sql_modules b where a.is_ms_shipped=0 and a.object_id = b.object_id... ...
  • " 1、實用功能 " "1.1、為腳本添加註釋" "1.2、控制命令的回顯" "1.3、使用數學表達式" "1.4、向腳本傳遞參數" " 2、使用變數 " "2.1、變數的命名及定義" "2.2、調用變數" "2.3、變數的作用域" " 3、結構語句 " "3.1、選擇語句" "3.2、迭代語句" ...
  • find /usr -size 4 查找2k(4個block)文件 find /usr -size +2048c 查找大於2k位元組文件 find /usr -size -2K 查找小於2k位元組文件 ...
  • make xxx_config實質上就是調用了 首先看MKCONFIG: 【註意】SRCTREE=源文件下的目錄 之後的語句: @$(MKCONFIG) $(@:_config=) arm arm920t EmbedSky NULL s3c2440就相當於執行 #mkconfig xxx arm a ...
一周排行
    -Advertisement-
    Play Games
  • 前言 在我們開發過程中基本上不可或缺的用到一些敏感機密數據,比如SQL伺服器的連接串或者是OAuth2的Secret等,這些敏感數據在代碼中是不太安全的,我們不應該在源代碼中存儲密碼和其他的敏感數據,一種推薦的方式是通過Asp.Net Core的機密管理器。 機密管理器 在 ASP.NET Core ...
  • 新改進提供的Taurus Rpc 功能,可以簡化微服務間的調用,同時可以不用再手動輸出模塊名稱,或調用路徑,包括負載均衡,這一切,由框架實現並提供了。新的Taurus Rpc 功能,將使得服務間的調用,更加輕鬆、簡約、高效。 ...
  • 順序棧的介面程式 目錄順序棧的介面程式頭文件創建順序棧入棧出棧利用棧將10進位轉16進位數驗證 頭文件 #include <stdio.h> #include <stdbool.h> #include <stdlib.h> 創建順序棧 // 指的是順序棧中的元素的數據類型,用戶可以根據需要進行修改 ...
  • 前言 整理這個官方翻譯的系列,原因是網上大部分的 tomcat 版本比較舊,此版本為 v11 最新的版本。 開源項目 從零手寫實現 tomcat minicat 別稱【嗅虎】心有猛虎,輕嗅薔薇。 系列文章 web server apache tomcat11-01-官方文檔入門介紹 web serv ...
  • C總結與剖析:關鍵字篇 -- <<C語言深度解剖>> 目錄C總結與剖析:關鍵字篇 -- <<C語言深度解剖>>程式的本質:二進位文件變數1.變數:記憶體上的某個位置開闢的空間2.變數的初始化3.為什麼要有變數4.局部變數與全局變數5.變數的大小由類型決定6.任何一個變數,記憶體賦值都是從低地址開始往高地 ...
  • 如果讓你來做一個有狀態流式應用的故障恢復,你會如何來做呢? 單機和多機會遇到什麼不同的問題? Flink Checkpoint 是做什麼用的?原理是什麼? ...
  • C++ 多級繼承 多級繼承是一種面向對象編程(OOP)特性,允許一個類從多個基類繼承屬性和方法。它使代碼更易於組織和維護,並促進代碼重用。 多級繼承的語法 在 C++ 中,使用 : 符號來指定繼承關係。多級繼承的語法如下: class DerivedClass : public BaseClass1 ...
  • 前言 什麼是SpringCloud? Spring Cloud 是一系列框架的有序集合,它利用 Spring Boot 的開發便利性簡化了分散式系統的開發,比如服務註冊、服務發現、網關、路由、鏈路追蹤等。Spring Cloud 並不是重覆造輪子,而是將市面上開發得比較好的模塊集成進去,進行封裝,從 ...
  • class_template 類模板和函數模板的定義和使用類似,我們已經進行了介紹。有時,有兩個或多個類,其功能是相同的,僅僅是數據類型不同。類模板用於實現類所需數據的類型參數化 template<class NameType, class AgeType> class Person { publi ...
  • 目錄system v IPC簡介共用記憶體需要用到的函數介面shmget函數--獲取對象IDshmat函數--獲得映射空間shmctl函數--釋放資源共用記憶體實現思路註意 system v IPC簡介 消息隊列、共用記憶體和信號量統稱為system v IPC(進程間通信機制),V是羅馬數字5,是UNI ...