歡迎您光臨本站 註冊首頁

在 NetBeans IDE 中調試 PHP 源代碼

←手機掃碼閱讀     火星人 @ 2014-03-26 , reply:0

轉自http://netbeans.org/kb/docs/php/debugging_zh_CN.html 要學習本教程,您需要具備以下軟體和資源。 軟體或資源 要求的版本 NetBeans IDE PHP 下載包 6.5 PHP 引擎 版本 5 Web 伺服器 推薦使用 Apache HTTP Server 2.2。 PHP 調試器 XDebug 2.0 或更高版本 準備工作 要在適用於 PHP 的 NetBeans IDE 中成功調試 PHP 應用程序,您需要為進行 PHP 開發安裝並配置 PHP 引擎、Apache 本地 Web 伺服器和 XDebug 調試器。 啟用 XDebug 安裝 XDebug 后,您必須在 PHP 引擎中啟用它。 啟用 XDebug: 找到 PHP 引擎所使用的 php.ini 文件。如果運行 phpinfo(),此文件將顯示在第一個表中的 "Loaded Configuration File"(已裝入的配置文件)表頭下。 在裝入的 php.ini 中取消註釋或添加以下行: zend_extension_ts="/php_xdebug-2.0.2-5.2.5.dll" xdebug.remote_enable=1 xdebug.remote_host=127.0.0.1 xdebug.remote_port=9000 xdebug.remote_handler=dbgp 有關如何配置 XDebug 的詳細信息,請單擊此處。 注意:請確保您指定的路徑與安裝過程中所確定的相應文件的位置匹配。 如果使用 XAMPP 包,則需要禁用 Zend 優化器,因為它會阻止 XDebug。找到相關行,然後刪除它們或將其標記為註釋。 注意:如果使用 XAMPP Lite,則需要對以下兩個 php.ini 文件進行上述更改: /xampplite/php/php.ini /xampplite/apache/bin/php.in 如何使用 XDebug 進行 PHP 調試 如果在 php.ini 文件中啟用了 XDebug,XDebug 便可以隨時暫停和恢復 PHP 程序執行。當程序執行暫停時,XDebug 可以檢索有關當前程序狀態的信息,例如讀取程序變數的值。實際上,此過程可以用下列工作流來表示: 用戶在 PHP 源代碼執行應該暫停的行上設置一個斷點。 當到達此行時,用戶按 F7 和 F8 鍵逐行執行腳本,並檢查變數的值。 調試器窗口 啟動調試會話時,將在主編輯器窗口下打開一組調試器窗口。要添加新窗口,請選擇「窗口」>「調試」。可以使用下列窗口: 「局部變數」窗口,顯示已初始化的變數及其類型和值的列表。 「監視」窗口,顯示用戶定義的表達式及其值的列表。 「調用棧」窗口,按倒序顯示被調用函數的列表。最後調用的函數將顯示在列表頂部。 「斷點」窗口,顯示設置了斷點的行所在的文件以及行號的列表。 「會話」窗口,顯示當前活動調試會話的列表。 「線程」窗口 「源」窗口 「HTTP 客戶端監視器」窗口 調試會話 以下過程是典型調試會話的工作流。 運行調試會話: 啟動 IDE,運行項目,然後打開包含要調試的源代碼的文件。 將游標置於某一行上,您希望在該行之前自動執行 PHP 腳本。 要設置斷點,請按 Ctrl-F8 組合鍵或選擇「調試」>「開啟/關閉行斷點」。 在「項目」窗口中,導航至當前項目節點,單擊滑鼠右鍵,然後從彈出式菜單中選擇「調試」。IDE 將打開調試器窗口並在調試器中運行該項目,直至到達斷點為止。 注意:如果當前項目設置為主項目,則可以選擇「調試」>「調試主項目」,按 Ctrl-F5 組合鍵或單擊 。 切換至「局部變數」窗口。該窗口顯示當前函數中已初始化的所有變數及其類型和值。 要查看該函數外部的變數值,請將游標置於此變數出現的某個位置上。工具提示會顯示變數值。 要逐行(包括所有被調用函數中的行)執行程序,請按 F7 鍵或選擇「調試」>「步入」,然後在「局部變數」窗口中監視這些變數值的更改。 要通過監視表達式的更改來檢查程序邏輯,請定義一個新監視: 要打開「監視」窗口,請選擇「窗口」>「調試」>「監視」,或按 Ctrl-Shift-2 組合鍵。將打開「監視」窗口。 在「監視」窗口中的任意位置單擊滑鼠右鍵,然後從彈出式菜單中選擇「新建監視」。將打開「新建監視」窗口。 輸入監視表達式,然後單擊「確定」。 現在,您便可以在調試過程中進行其他檢查。 要取消對某個函數中代碼的逐行執行操作並跳至該函數調用后的下一行,請按 Ctrl-F7 組合鍵或選擇「調試」>「步出」。 要跳過對某個函數中代碼的逐行執行操作,獲取該函數返回的值,並跳至該函數調用后的下一行,請按 F8 鍵或選擇「調試」>「步過」。 要暫停調試會話,請選擇「調試」>「暫停」。 要繼續調試會話,請選擇「調試」>「繼續」或按 。 要取消調試會話,請按 。 在程序結束時,調試器窗口會關閉。 樣例調試會話 此部分說明了一個標準的調試會話。 使用以下參數創建新的 PHP 項目: 項目類型 - PHP 應用程序 源位置 - htdocs 文件夾的預設位置 運行配置 - 本地 Web 站點 有關設置 PHP 項目的更多詳細信息,請參見設置 PHP 項目文檔。 在項目創建完成後,將游標置於「源文件」節點上,從彈出式菜單中選擇「屬性」,然後打開「調試」窗口。選中「調試伺服器端 PHP」複選框。 要在會話過程中使用熱鍵,請將游標置於項目節點上,然後從彈出式菜單中選擇「設置為主項目」。 在 index.php 文件中,輸入以下代碼: NetBeans PHP debugging sample 該代碼包含三個函數: calculate_factorial () 函數 calcualte_sum () 函數 calculate_sum_of_factorials () 函數,該函數調用 calculate_factorial () 函數兩次,再調用 calcualte_sum () 函數一次,然後返回計算的階乘和。 在 PHP 塊的開頭設置一個斷點 (Ctrl-F8): 「新建監視」或按 Ctrl-Shift-F6 組合鍵。將打開「新建監視」窗口。 輸入以下表達式,然後單擊「確定」。 $factorial1+$factorial2 「監視」窗口中將顯示新表達式。 運行調試會話。當調試器在以下行停止時 return $result; 將「監視」窗口中表達式的值與「局部變數」窗口中 $result 的值進行比較。它們應該相同,但在此示例中不同。 此示例非常簡單,它為您提供了使用監視的一些基本概念。 PHP 和 HTML 混合用例 您可以調試同時包含 PHP 塊和 HTML 塊的代碼。在樣例調試會話部分的示例中,對值進行了固定編碼。現在,將通過用於輸入值的 HTML 輸入表單來擴展該代碼。 在 塊的上方添加以下 HTML 代碼:
Enter the first integer, please:
Enter the second integer, please:
有關詳細信息,請參見 HTML 輸入表單。 將 塊頂部的以下行: $m=5; $n=10; $sum_of_factorials = calculate_sum_of_factorials ($m, $n); echo "The sum of factorials of the entered integers is " . $sum_of_factorials; 替換為以下代碼: if (array_key_exists ("first_integer", $_POST) && array_key_exists ("second_integer", $_POST)) { $result = calculate_sum_of_factorials ($_POST["first_integer"], $_POST["second_integer"]); echo "Sum of factorials is " . $sum_of_factorials; } 在 塊的開頭設置一個斷點,然後啟動調試會話。 按 F7 鍵。調試器將步入程序。同時,會打開瀏覽器窗口,但不顯示輸入表單。這是調試器的正確行為,因為它必須首先通過 Web 頁的整個源代碼,然後才能顯示該頁面。實際上,這意味著調試器通過了兩次代碼。第一次是調試器處理代碼以顯示 HTML 輸入表單。第二次是調試器逐步執行 PHP 代碼。 按 F7 鍵,直到調試器到達程序末尾並且打開輸入表單為止。 填寫該表單,然後單擊 Enter 鍵。將繼續調試會話(如樣例調試會話部分中所述)。

[火星人 ] 在 NetBeans IDE 中調試 PHP 源代碼已經有529次圍觀

http://coctec.com/docs/linux/show-post-184111.html