次のような配列があります
$arr = array(1,2,3,4,5,6,7,8);
start1
1
2
3
4 を出力するためにループを使用したい
終了1
開始2
1
2
3
4
終了2
----------------------------------- ----- ------------------
start1
5
6
7
8
end1
start2
5
6
7
8
end2
の意味4 ごとに配列を変更します 各グループはグループに分けられます
そして、各グループは 2 回繰り返される必要があります
<?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<$n;$i++){ echo 'start'.($i+1)."\r\n"; echo implode("\r\n", $tmp)."\r\n"; echo 'end'.($i+1)."\r\n"; } echo "----------------------------------------------------------\r\n"; }}
start11234end1start21234end2----------------------------------------------------------start15678end1start25678end2
while ループが終了しないのはなぜですか?
while(count($arr)>0)
while ループが終了しないのはなぜですか?