PHP-smartyについての質問になります。
smartyのforeachプロパティで、例えば要素を6番目まで
取り出すには以下のような書き方になると思います。
PHP
1{foreach from=$array item="i" key="k" name="n"} 2 {if $smarty.foreach.n.index < 6} 3 <li><img src="{$i.image}" alt="sample"></li>//6番目までのアイテムとキーが出力 4 {/if} 5{/foreach}
では、7番目からの要素を取り出すにはどうすれば良いですか?
以下の書き方を試してみましたが、7番目のみのキーがitemの個数だけ全部出てしまうので、
ご指南いただけたら嬉しいです。
PHP
1{foreach from=$array item="i" key="k" name="n"} 2 {if $smarty.foreach.n.index >= 7} 3 <li><img src="{$i.image}" alt="sample"></li>//7番目のアイテムとキーだけ表示される... 4 {/if} 5{/foreach}
Smartyのversionは2.6.25です。
foreachの配列構造は以下のような多次元配列の場合で仮定しています。
smarty debug consoleをイメージして頂けたらと思います。
PHP
1{$array} -> Array (8) 2 item1 => Array(2) 3 sample_id => "12345" 4 sample_id2 => "67890" 5 item2 => Array(2) 6 sample_id => "23456" 7 sample_id2 => "78901" 8 //~~省略~~ 9 item8 => Array(2) //itemは8個まで 10 sample_id => "90123" 11 sample_id2 => "12345"