2011-05-06 27 views
2

有沒有一種簡單的方法可以將變量回顯到Kohana控制器的頁面(或其他位置)?在開發模式下使用Django,您可以輕鬆添加顯示到控制檯的打印語句。在Kohana中,我必須將變量傳遞給視圖,這很快就會導致問題。通過打印變量輕鬆調試Kohana?

編輯指定:Kohana的3.1

回答

2

這取決於你的Kohana版本。對於V3.1,你將要使用:

Debug::vars($myVar)

你能堅持到這一個變量或只是附和它從你的PHP文件。

對於舊版本的Kohana的,你會想用:

Kohana::debug($myVar)

+0

這似乎從一個模板工作正常,但我怎麼能從控制器使用它,而無需添加大量的cruft將輸出傳遞到模板? – 2011-05-06 20:53:02

+1

如果您想要臨時「修復」,則可以直接從您的控制器打印Debug :: vars()。這不是優雅,但它的作品。 ;) – DondeEstaMiCulo 2011-05-06 21:06:36

+0

謝謝!它看起來像是適用於控制器,但不顯示控制器中的輔助函數的輸出(例如'private function ...'),或者是否有表單提交處理。 – 2011-05-06 21:18:10

1

在3.1

在3.0呼應Debug::vars(),你會使用回聲Kohana::debug()

+0

謝謝zombor。我會問我同樣的問題,我做了其他類似的答案 - 這似乎從一個模板工作正常,但我怎麼能從控制器使用它,而不添加大量的cruft將輸出傳遞到視圖? – 2011-05-06 21:05:05

0

另一種選擇是使用Firebug + firephp。您可以添加在螢火蟲控制檯上可見的調試語句。

3

看看Kohana Debug Toolbar。它是一個用於調試&性能分析的非常有用的模塊。對於自定義變量,您可以調用DebugToolbar::add_custom('foo', $foo),然後在特殊工具欄中分析其轉儲。

+0

根據開發頁面,它只與[Kohanna 2.3兼容。X](http://dev.kohanaframework.org/projects/kohana-debug-toolbar)。 – 2011-07-05 16:28:03

+0

該開發頁面非常陳舊。從github上拿一個模塊和我的鏈接 – biakaveron 2011-07-06 12:42:10

+0

太棒了,我認爲這是我的團隊正在考慮的工具之一。 – 2011-07-06 15:47:02

0

其在Kohana中3.3.0(穩定)改變,你可以使用擴展Kohana_Debug這裏是轉儲調試爲例Debug類的靜態方法一個變量:

<?php 

$days = Date::days(2, 2019); 
echo "<pre>"; 
echo DEBUG::dump($days); 
echo "</pre>"; 

?> 

另一種方法是DEBUG::vars()例子如下:

<?php 

$days = Date::days(2, 2019); 
echo DEBUG::vars($days); 

?> 

Debug類更多信息,調試,您可以檢查Kohana的調試文件位於系統/班/ Kohana的/ debug.php的目錄以外的方法大多數方法有你非常自我解釋的名稱可以像上面一樣使用它們作爲您的要求。

希望這有助於:)...!