首頁 >後端開發 >php教程 >求大神解决下php数组循环的问题

求大神解决下php数组循环的问题

WBOY
WBOY原創
2016-06-23 13:35:06890瀏覽

我有一个数组如下

$arr = array(1,2,3,4,5,6,7,8);
希望用循环输出
start1
1
2
3
4
end1
start2
1
2
3
4
end2
----------------------------------------------------------
start1
5
6
7
8
end1
start2
5
6
7
8
end2

意思就是把数组 每4个一分组 
而且每组要重复两次


回复讨论(解决方案)

<?php$arr = array(1,2,3,4,5,6,7,8);for($i=0; $i<count($arr); $i+=4){	$temp = array_slice($arr, $i, 4);	for($k=1; $k<=2; $k++){		echo 'start'.$k.'<br>';		foreach ($temp as $val) {			echo $val.'<br>';		}		echo 'end'.$k.'<br>';	}}

$arr = array(1,2,3,4,5,6,7,8);$n = 2; // 循环2次$split = 4; // 4个为一个分组echo '<pre class="brush:php;toolbar:false">';response($arr, $n, $split);echo '
';function response($arr, $n, $split){ while(count($arr)>0){ $tmp = array_splice($arr, 0, $split); for($i=0;$i

start11234end1start21234end2----------------------------------------------------------start15678end1start25678end2

while(count($arr)>0)
while循环没有终止 为什么是正常的呢

while(count($arr)>0)
while循环没有终止 为什么是正常的呢



array_splice 会把 $arr的元素拿出,使$arr元素减少。所以当元素全部取出后。$arr为空,退出循环。

好的 非常感谢

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn