2011-10-12 47 views
0

不顯示我有一個變量$my_arrvar_dump($my_arr)PHP導致智者模板

array(3) { [0]=> object(stdClass)#6 (9) { ["prod_index"]=> string(1) "1" ["prod_code"]=> string(4) "amp1" ["prod_name"]=> string(11) "Amplifier A" ["prod_price"]=> string(6) "100.00" ["frequency"]=> string(1) "2" ["gain"]=> string(1) "2" ["gain_variation"]=> string(3) "0.2" ["noise"]=> string(1) "2" ["power"]=> string(2) "10" } [1]=> object(stdClass)#7 (9) { ["prod_index"]=> string(1) "3" ["prod_code"]=> string(4) "amp1" ["prod_name"]=> string(13) "Amplifire1.33" ["prod_price"]=> string(6) "133.00" ["frequency"]=> string(4) "2.12" ["gain"]=> string(1) "2" ["gain_variation"]=> string(3) "0.2" ["noise"]=> string(1) "2" ["power"]=> string(2) "10" } [2]=> object(stdClass)#8 (9) { ["prod_index"]=> string(1) "4" ["prod_code"]=> string(4) "amp1" ["prod_name"]=> string(13) "Amplifier1.45" ["prod_price"]=> string(6) "150.00" ["frequency"]=> string(4) "2.99" ["gain"]=> string(1) "2" ["gain_variation"]=> string(3) "0.2" ["noise"]=> string(1) "2" ["power"]=> string(2) "10" } } 

在智者我試圖

{foreach name = fe1 item = k from = arr} 
{$k->prod_index}  
{/foreach} 

但它沒有顯示任何結果。

+0

而你是如何通過該變量從PHP到模板? – zerkms

+3

是不是應該從'= $ arr'?而據我所知,在Smarty的3,你可以使用PHP的語法:'{$的foreach作爲改編$ķ}' – Catalin

+0

@Catalin感謝克特林....指出我的愚蠢的錯誤感謝! –

回答

0

假設你已經分配陣列給Smarty,如:「」

$smarty->assign("arr", $my_arr); 

您需要使用語法,如:

{foreach name = fe1 item = k from = arr} 
{$k.prod_index}  
{/foreach} 
+0

正在訪問一個對象的屬性不是一個數組的鍵..說不上來,如果你可以訪問它們一樣的... – Catalin

+0

沒有「無縫」治療對象/陣列。對象需要 - >,數組需要。 – rodneyrehm

+0

@rodneyrehm您還可以訪問陣列像PHP $改編[「arrkey」]或$改編[arrkey] – Catalin