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

WBOY
發布: 2016-06-13 12:19:25
原創
892 人瀏覽過

求大神解决下php数组循环的问题
我有一个数组如下

$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个一分组 
而且每组要重复两次
------解决思路----------------------

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

------解决思路----------------------
<br />$arr = array(1,2,3,4,5,6,7,8);<br />$n = 2; // 循环2次<br />$split = 4; // 4个为一个分组<br />echo '<pre class="brush:php;toolbar:false">';<br />response($arr, $n, $split);<br />echo '
登入後複製
';

function response($arr, $n, $split){
while(count($arr)>0){
$tmp = array_splice($arr, 0, $split);
for($i=0;$i<$n;$i++){
echo 'start'.($i+1)."\r\n";
echo implode("\r\n", $tmp)."\r\n";
echo 'end'.($i+1)."\r\n";
}
echo "----------------------------------------------------------\r\n";
}
}


<br />start1<br />1<br />2<br />3<br />4<br />end1<br />start2<br />1<br />2<br />3<br />4<br />end2<br />----------------------------------------------------------<br />start1<br />5<br />6<br />7<br />8<br />end1<br />start2<br />5<br />6<br />7<br />8<br />end2<br />
登入後複製

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!