2015-10-03 26 views
7

我在php.ini文件中啓用xdebug如下:netbeans中的php xdebug - 如何查看變量的值?

[XDebug] 
zend_extension = "D:\xampp\php\ext\php_xdebug.dll" 
xdebug.profiler_append = 0 
xdebug.profiler_enable = 1 
xdebug.profiler_enable_trigger = 0 
xdebug.profiler_output_dir = "D:\xampp\tmp" 
xdebug.profiler_output_name = "cachegrind.out.%t-%s" 
xdebug.remote_enable = 0 
xdebug.remote_handler = "dbgp" 
xdebug.remote_host = "localhost" 
xdebug.trace_output_dir = "D:\xampp\tmp" 

和我的NetBeans的設置是一樣的手冊。現在,當我嘗試按Ctrl + F5(以線140設置斷點後),那麼就說明如下:

​​

我怎麼能看到的$user_id在netbean的控制檯下方的值(或任何其他變量的值)? ?

還是有什麼辦法可以通過在CLI中設置斷點和檢查變量值來調試PHP代碼像python import pdb;pdb.set_trace() ???以便代碼在特定行中斷開(當採取像提交表單或重新加載瀏覽器的操作時),然後我可以在斷點前檢查每個變量,即使在斷點後也可以檢查每個變量

+0

Xdebug未設置/正常工作(「等待連接」),請重新檢查您的設置。可能應該啓用remote_enable。並確保您在瀏覽器中正確啓動xdebug會話。 http://xdebug.org/docs/remote – JimL

+0

遠程啓用,現在問題是斷點停止代碼在覈心庫(CodeIgniter)的第一行執行,但我在我的自定義控制器中設置斷點 –

+1

要麼禁用您的IDE中的「第一行中斷」或者只是打打到下一個中​​斷點。 – JimL

回答

0

1.回顧您的php.ini配置。

xdebug.remote_enable = 1 
xdebug.remote_host = localhost 
xdebug.remote_port = 9000 

另外,還要確保你的zend_extension = 「d:\ XAMPP \ PHP \分機\ php_xdebug.dll」 是正確的。在我的電腦上,我有\,而不是\,不知道它是否重要...

2.重新啓動您的服務器(不確定是否需要)。

3.檢查在工具 - 你的NetBeans配置>選項 - > PHP->調試

4,檢查你的項目屬性:「瀏覽器」和「運行配置」

如果一切是正確的,你可以在netbeans中設置一個斷點,然後調試:「調試」 - >「調試項目」

+0

測試你寫的,即使有幾個配置。與所提供的圖像相同 –

+0

您是否通過netbeans啓動調試?另外:在屏幕截圖中,您可以看到「等待連接」,所以xdebug似乎配置錯​​誤。檢查你的日誌 –