次のような配列を繰り返し処理したいと思います。
array(
['aaa'] => ['a'],
['bbb'] => ['b']
)
通常、私はそれをこのようにします:
{{#array}}{{array}}{{/array}} // 'a' 'b'
しかし、上記のループで現在のキーを表示するにはどうすればよいですか?のようなものを表示したい'aaa' 'a' 'bbb' 'b'
。出来ますか?
Mustache で連想配列を反復処理することはできません。連想配列は、反復可能なリストではなく「コンテキスト」として認識されます。
ビューを準備するか、データを前処理してより Mustache に適した形式にすることで、反復可能にすることができます。データを Mustache に渡す前に foreach ループを使用してこれを行うこともできますが、これを行う最も簡単な方法はおそらくプレゼンターでラップすることです。これを試着してサイズを確認してください:
これを試して:
$a=array('aaa' => 'a', 'bbb' => 'b');
print_r($a);
foreach($a as $key => $val){
echo $key . ' - ' . $val . '<br>';
}
出力
Array
(
[aaa] => a
[bbb] => b
)
aaa - a
bbb - b