与标签的小胡子模板

时间:2014-05-27 14:30:54

标签: php mustache.php

如果我有以下数组

array (
    'people' => array(
        [0] => array('name'=>'name1'),
        [1] => array('name'=>'name2', 'last' => true)
    )
);

我希望使用Mustache模板输出它,以便最终的html如下所示:

<div>
    Names: name1, name2
</div>

虽然如果数组是空的,那么它不应该输出任何东西。

这是我目前的模板

<div>
    {{#people}}
        Names: {{name}}{{^last}}, {{/last}}
    {{/people}}
</div>

输出

<div>
    Names: name1, Names: name2
</div>

我明白为什么它没有输出我想要的但我不知道如何解决它。

1 个答案:

答案 0 :(得分:2)

<div>
    {{#people.0}}
        Names:
        {{#people}}
            {{name}}{{^last}}, {{/last}}
        {{/people}}
    {{/people.0}}
</div>

您获得Names:两次的原因是因为{{#people}}{{\people}}内的所有内容都被视为循环。