php中foreach怎么控制循环次数?

<{foreach from = $kz_list key ='key' item = 'item' name = n}>
<{if $smarty.foreach.n.iteration % 2 eq 0}><{/if}>
<li class='alt'>
<h4 class="tit fl"> <a href="<{$item.url}>"><{$key}></a></h4>
<span class="more fr"> <a href="<{$item.url}>" target="_blank">更多>> </a></span>
<{foreach key='k' item='v' from=$item.son}><a href="<{$v.url}>" <{if $v.namecolor=='#FF0000' || $v.namecolor=='red'}>class="red"<{elseif $v.namecolor=='#008000' || $v.namecolor=='green'}>class="green"<{elseif $v.namecolor=='#0000FF' || $v.namecolor=='blue'}>class="blue"<{elseif $v.namecolor!=''}>style="color:<{$v.namecolor}>;"<{/if}>><{$v.name}></a><{/foreach}></li>
<{/foreach}>
我想让上面的代码循环10次后终止,该怎么改呢?

如果是索引数组的话,直接通过索引就可以控制,比如:
<?php
$array = array('a','b','c');

foreach($array as $key=>$value){
if($key == 2){
break;
}
echo $value.'<br>';
}
?>
如果是关联数组的话,定义一个计数器就可以控制,比如:
<?php
$array = array('a'=>'aa','b'=>'bb','c'=>'cc');

$i = 0;
foreach($array as $key=>$value){
if($i == 2){
break;
}
echo $value.'<br>';
$i++;
}
?>
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-02
foreach($state as $states)
{
vprintf(" %s %s %s %s %s",$state);
}
你这个语句出问题了。请看清楚参数。你这是把$state作为参数!肯定会重复打印$state五次。
改成:
foreach($state as $states)
{
echo $states.' ';
}
就行了~追问

不要粘贴复制好吗?

本回答被提问者采纳