2013-01-08 43 views
4

我對print_r函數有點麻煩。毫無疑問,什麼我在運作的誤解......基本上,我有對象的數組中的一類,像這樣:print_r返回值錯誤

public $fields = array(); 

分配了類似這樣:

$oField = new Field(); 
/* property assignments to $oField omitted for brevity */ 
$this->fields[$i] = $oField; 

現在在初級班,我我試圖捕捉到的調試信息:

$this->debuginfo = print_r($this->fields, true); 

當輸出的$this->debuginfo的價值,它只是說「陣列」 - 基本上沒有爆炸的陣列。如果我經常使用print_r($this->fields);,它會給出預期的結果。

這是我第一次嘗試使用print_r它返回的結果 - 輸出到屏幕上,所以我敢肯定,我只是失去了一些東西,但在閱讀PHP文檔,這是怎麼會似乎中實現。我錯過了什麼?

感謝您的幫助!

更新: print_r($var, true)確實像我寫的那樣正確地返回了「爆炸」變量。感謝dev-null的評論,這給了我一些思考的食物,導致我的問題。

+0

你怎麼輸出'$這個 - > debuginfo'? –

+0

您使用的是什麼版本的PHP? Field類的屬性是受保護的,私有的還是靜態的? –

+0

我實際上將值保存到數據庫。數據庫中的字段包含「數組」。 –

回答