2013-03-05 37 views
0

我想通過smarty模板創建一個XML文件。爲此,我將一個數組傳遞給模板文件。這是我用來生成數組並傳遞的代碼。Smarty在tpl文件中不顯示數組值

$correct_answers = explode(",", $answer['answer']); 
$smarty->assign('answers', $correct_answers); 

數組已成功生成,我通過使用print_r()進行了檢查;但我的問題是,它在tpl文件中顯示爲空。如果我檢查計數,它顯示0.我無法獲得數組值。這是模板文件代碼。

{assign var = "inc" value="0"} 
{section name=answer loop=$answers} 
    <simpleChoice identifier="{$answers[answer]}">{$answers[answer]}</simpleChoice>   
    {assign var = "inc" value=$inc+1} 
{/section} 

我不知道我出錯的地方。

陣列結構,

Array 
(
    [0] => Alonso 
    [1] => Jenson Button 
    [2] => Rubens Barrichello 
) 

回答

3

試試這個:與其section使用foreach

{foreach from=$answers item=answer} 
    <simpleChoice identifier="{$answer}">{$answer}</simpleChoice>   
    {assign var = "inc" value=$inc+1} 
{/foreach} 

這類似於在PHP foreach循環。

Ref:http://www.smarty.net/docsv2/en/language.function.foreach

+0

謝謝男人..它現在運作良好。 – 2013-03-05 06:28:24

+0

@EdwinAlex:酷:D – 2013-03-05 06:28:52