搜尋
首頁後端開發php教程用Xdebug和Sublime Text 3調試3

用Xdebug和Sublime Text 3調試3

調試 - 我們都做很多事情。第一次編寫代碼很難編寫,只有少數(如果有)成功。一年多以前,Shameer在SitePoint上寫了一篇文章,內容涉及如何使用Xdebug和Netbeans調試應用程序。在本文中,我們將了解如何使用Xdebug與Sublime Text結合使用Xdebug。

鑰匙要點

    要使用Xdebug和Sublime Text 3進行調試,需要安裝PHP Xdebug擴展名,並且應使用通過軟件包控制安裝的Xdebug軟件包配置Sublime Text 3。
  • > Xdebug必須在php.ini文件或具有特定設置的xdebug.ini文件中配置,然後應重新啟動Web服務器。
  • >對於崇高的文本3,必須設置項目,並且應將Web應用程序的URL添加到項目文件設置中。這允許在多個項目上進行調試,而無需每次更改Xdebug config。
  • >
  • >可以啟動Xdebug會話,可以在應用程序停止的情況下設置斷點。從那裡可以檢查變量,可以運行應用程序直到下一個斷點或使用各種命令結束,例如“運行”,“逐步進入”,“逐步”和“逐步淘汰”。
  • 入門
  • 首先,我們需要安裝PHP Xdebug擴展名。如果您不確定如何完成此操作,請查看引言中提供的鏈接。確保Xdebug通過檢查是否在您的phpinfo()中列出。
當然,我們還需要崇高的文字。我將使用最新版本:Sublime Text 3。它也應與Sublime Text 2一起使用。

設置Xdebug

我們需要通過將以下內容添加到您的php.ini文件,甚至更好地在xdebug.ini文件中添加以下內容來配置Xdebug。
通常,您將使用127.0.0.1作為主機。但是,如果您使用流浪者,則將使用諸如10.0.2.2之類的東西,具體取決於Xdebug可以找到您的系統。

遠程日誌不是必需的,但是在出現問題的情況下,您可以在這裡找到有關發生錯誤的信息。

>

不要忘記重新啟動您的Web服務器!

<span>xdebug.remote_enable=1
</span><span>xdebug.remote_handler=dbgp
</span><span>xdebug.remote_host=127.0.0.1
</span><span>xdebug.remote_port=9000
</span><span>xdebug.remote_log="/var/log/xdebug/xdebug.log"</span>
設置Sublime文本3

>

>安裝了軟件包控件後,您應該啟動Sublime Text 3。從工具菜單中打開命令調色板,然後搜索“安裝軟件包”。

>現在您可以搜索您喜歡的任何軟件包。在我們的情況下,我們將搜索“ Xdebug客戶端”軟件包。
用Xdebug和Sublime Text 3調試3

>我們要做的最後一個位是在崇高之內設置項目。最簡單的方法是打開應用程序的根目錄,轉到項目,然後單擊“保存為”。我建議您將文件保存在應用程序的根源中,因此,如果您使用任何內容,則可以將其保存在版本控制系統中,並且可以始終輕鬆配置。

>

>打開剛剛創建的項目文件。內容看起來像這樣:

<span>xdebug.remote_enable=1
</span><span>xdebug.remote_handler=dbgp
</span><span>xdebug.remote_host=127.0.0.1
</span><span>xdebug.remote_port=9000
</span><span>xdebug.remote_log="/var/log/xdebug/xdebug.log"</span>

我們將添加更多行:

>
<span>{
</span><span>    "folders":
</span><span>    [
</span><span>        {
</span><span>           "follow_symlinks": true,
</span><span>           "path": "."
</span><span>        }
</span><span>    ]
</span><span>}</span>
如您所見,我只在實際的Web應用程序中添加了一個URL。我可以為Xdebug設置更多設置,但是,這足以開始。我也可以在Xdebug設置本身中設置此URL,但是在這種情況下,我無法在多個項目上工作,而無需每次更改Xdebug config。

啟動Xdebug Session

>現在,我們可以啟動Xdebug會話,以查看是否正確設置了所有內容。在菜單中,單擊工具 - > Xdebug,然後單擊“開始調試”(啟動瀏覽器)。您會注意到您的網站已打開,然後? xdebug_session_start = sublime.xdebug添加到URL的末尾。這將啟動Xdebug會話。在Sublime中,出現了一些額外的面板,將在其中顯示一個或多個斷點後顯示調試信息。

>

斷點

>讓我們列出第一個斷點。斷點基本上是一個標誌,您的應用程序到達時將停止。目前,您可以檢查所有變量的值,以便您實際上知道發生了什麼。

>

>我們可以通過在行上使用右鼠標單擊,轉到XDEBUG,然後單擊“添加/刪除斷點”來添加斷點。將添加一個標記物,以指示已設置了一個斷點。

>我們再次打開瀏覽器,繼續進行我們剛開始的會話。您會注意到,一旦進入斷點所在的頁面,該頁面就會停止加載。如果您現在打開Sublime,您將看到Xdebug面板中顯示的許多信息。 用Xdebug和Sublime Text 3調試3

> Xdebug堆棧和Xdebug上下文非常有趣。在堆棧中,您可以看到整個堆棧TACKTRACE您的電話都通過了。

在上下文中,您將看到所有全局變量,也將看到您定義的變量。您可以單擊這些變量,以準確查看這些變量所固定。例如,在下面的屏幕截圖中,我單擊了$ _server變量。

請注意,黃色箭頭指向該應用程序當前停止的行。

>因此,我們的應用程序停止了,現在我們可以瀏覽定義的變量。但是,我們已經完成了,我們想繼續前進。現在什麼?當您右鍵再次單擊並懸停在Xdebug菜單上時,您將有幾個選項:>

    >運行將運行應用程序直至下一個斷點或結束直至結束。 >
  • >運行到線路,直到您單擊的線直至。
  • >進入當前功能,然後立即停止。
  • >
  • >逐步將跨越當前功能,並在此之後停止。
  • 逐步退出當前功能,然後立即停止。
  • >
  • 停止將停止調試。
  • >
  • 脫離也將停止調試。
  • 跑步和停止非常容易理解。步驟方法可能有些混亂。讓我們以一個簡單的例子來深入研究。
  • >

想像您在方法欄的第一行中添加了一個斷點。因此,在Breakpoint註釋(// Breakpoint)的線路上。

<span>xdebug.remote_enable=1
</span><span>xdebug.remote_handler=dbgp
</span><span>xdebug.remote_host=127.0.0.1
</span><span>xdebug.remote_port=9000
</span><span>xdebug.remote_log="/var/log/xdebug/xdebug.log"</span>
>進入步驟,調試器將逐步進入Foobar方法,並將在第一行停止。因此,在這種情況下,調試器將停止返回array_values($ arr);線。

>逐步將調用該方法,但不會停止。調用該方法後,它將停在下一行。因此,在這種情況下,它將停止在返回$ arr;

>

>最後,隨著逐步效力,它將通過整個條方法運行並返回呼叫者。在這種情況下,它將脫離對象,返回原來的呼叫者。 >

如果您只是決定運行,則應用程序將進一步運行,直到執行或發生另一個斷點為止。

>

結論

在本文中,我們看到瞭如何將Xdebug與Sublime整合在一起,並確保我們了解如何調試。幾乎每個適合PHP的IDE都可以與Xdebug集成。如果您有興趣在Netbeans中這樣的調試,請查看引言中提到的文章。您正在使用斷點嗎?還是您使用諸如VAR_DUMP之類的PHP功能獲取調試數據?在下面的評論中讓我們知道!

>

經常詢問有關使用Xdebug和Sublime Text 3

調試的問題(常見問題解答)

>如何安裝Xdebug進行崇高的文本3?

>安裝Xdebug以進行崇高文本3,首先需要安裝Xdebug PHP擴展名。這可以通過從Xdebug網站下載適當的DLL文件並將其添加到您的PHP Extensions目錄中來完成。之後,您需要修改php.ini文件以包含Xdebug擴展名。安裝了Xdebug PHP擴展名後,您可以使用軟件包控制安裝Xdebug text 3的Xdebug軟件包。

>如何為崇高的文本3配置xdebug?在您的php.ini文件中,您需要設置xdebug.remote_enable和xdebug.remote_autostart設置為1。在崇高的文本3設置中,您需要指定php可執行文件的路徑,以及xdebugs the xdebug the xdebug 。

>為什麼xdebug在崇高的文本3中不工作? Xdebug在Sublime文本3中沒有工作,可能有幾個原因。一個常見的問題是,Xdebug PHP擴展名未正確安裝或配置。另一個問題可能是未正確安裝或配置了崇高文本3的Xdebug軟件包。您的php或sublime文本3設置也可能存在問題。

>我如何使用xdebug在崇高的文本3?

中使用xdebug在崇高的文本3,您首先需要在代碼中設置斷點。這可以通過單擊要斷點的代碼行旁邊的排水溝來完成。設置了斷點後,您可以通過從Xdebug菜單中選擇“開始調試”來啟動調試會話。

我可以在Mac上使用Xdebug和Sublime Text 3在Mac上使用Sublime Text 3嗎?可以在Mac上使用Xdebug與Sublime Text 3使用。在Mac上安裝和配置Xdebug的過程類似於Windows的過程,但是存在一些差異。例如,php.ini文件和php擴展名目錄的位置可能不同。

>

>如何使用sublime text 3中的xdebug查看變量值3? Xdebug在Sublime文本3中,您需要使用“手錶”功能。這使您可以在調試會話中指定要監視的變量。當觀察變量更改時,其新值將顯示在Xdebug面板中。

>如何停止在Sublime Text 3中停止調試會話?在Sublime Text 3中的調試會話,您可以使用Xdebug菜單中的“停止調試”命令。這將結束調試會話並將控件返回到Sublime文本3。

>我可以使用Xdebug和sublime Text 3?

>是的,您可以使用XDEBUG和XDEBUG和崇高的文本3。這需要其他配置,包括設置xdebug.remote_host和xdebug.remote_port設置在您的php.ini文件。

>如何更新Sublime Text 3?

以上是用Xdebug和Sublime Text 3調試3的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
如何檢查PHP會話是否已經開始?如何檢查PHP會話是否已經開始?Apr 30, 2025 am 12:20 AM

在PHP中,可以使用session_status()或session_id()來檢查會話是否已啟動。 1)使用session_status()函數,如果返回PHP_SESSION_ACTIVE,則會話已啟動。 2)使用session_id()函數,如果返回非空字符串,則會話已啟動。這兩種方法都能有效地檢查會話狀態,選擇使用哪種方法取決於PHP版本和個人偏好。

描述一個場景,其中使用會話在Web應用程序中至關重要。描述一個場景,其中使用會話在Web應用程序中至關重要。Apr 30, 2025 am 12:16 AM

sessionsarevitalinwebapplications,尤其是在commercePlatform之前。

如何管理PHP中的並發會話訪問?如何管理PHP中的並發會話訪問?Apr 30, 2025 am 12:11 AM

在PHP中管理並發會話訪問可以通過以下方法:1.使用數據庫存儲會話數據,2.採用Redis或Memcached,3.實施會話鎖定策略。這些方法有助於確保數據一致性和提高並發性能。

使用PHP會話的局限性是什麼?使用PHP會話的局限性是什麼?Apr 30, 2025 am 12:04 AM

PHPsessionshaveseverallimitations:1)Storageconstraintscanleadtoperformanceissues;2)Securityvulnerabilitieslikesessionfixationattacksexist;3)Scalabilityischallengingduetoserver-specificstorage;4)Sessionexpirationmanagementcanbeproblematic;5)Datapersis

解釋負載平衡如何影響會話管理以及如何解決。解釋負載平衡如何影響會話管理以及如何解決。Apr 29, 2025 am 12:42 AM

負載均衡會影響會話管理,但可以通過會話複製、會話粘性和集中式會話存儲解決。 1.會話複製在服務器間複製會話數據。 2.會話粘性將用戶請求定向到同一服務器。 3.集中式會話存儲使用獨立服務器如Redis存儲會話數據,確保數據共享。

說明會話鎖定的概念。說明會話鎖定的概念。Apr 29, 2025 am 12:39 AM

Sessionlockingisatechniqueusedtoensureauser'ssessionremainsexclusivetooneuseratatime.Itiscrucialforpreventingdatacorruptionandsecuritybreachesinmulti-userapplications.Sessionlockingisimplementedusingserver-sidelockingmechanisms,suchasReentrantLockinJ

有其他PHP會議的選擇嗎?有其他PHP會議的選擇嗎?Apr 29, 2025 am 12:36 AM

PHP會話的替代方案包括Cookies、Token-basedAuthentication、Database-basedSessions和Redis/Memcached。 1.Cookies通過在客戶端存儲數據來管理會話,簡單但安全性低。 2.Token-basedAuthentication使用令牌驗證用戶,安全性高但需額外邏輯。 3.Database-basedSessions將數據存儲在數據庫中,擴展性好但可能影響性能。 4.Redis/Memcached使用分佈式緩存提高性能和擴展性,但需額外配

在PHP的上下文中定義'會話劫持”一詞。在PHP的上下文中定義'會話劫持”一詞。Apr 29, 2025 am 12:33 AM

Sessionhijacking是指攻擊者通過獲取用戶的sessionID來冒充用戶。防範方法包括:1)使用HTTPS加密通信;2)驗證sessionID的來源;3)使用安全的sessionID生成算法;4)定期更新sessionID。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境