一個一維數組有3000個元素怎么把它分割成3個1000個元素的一維數組array(0=>q, 1=>q, 2=>q, ...........3000=>q);成為:array(0=>q, 1=>q, 2=>q, ...........1000=>q);array(1001=>q, 1002=>q, 1003=>q, ...........2000=>q);array(2001=>q, 2002=>q, 2003=>q, ...........3000=>q);
2 回答

慕桂英3389331
TA貢獻2036條經驗 獲得超8個贊
$a = array(1=>'a',2=>'b',3=>'c',4=>'d',5=>'e',6=>'f',7=>'g',8=>'h',9=>'i');
function sliceArr($a){
$num = 3;//截取的長度,我給的例子默認為3,你換成1000就OK了。
$a1 = array_slice($a,0,$num);//你寫成($a,0,$num)
print_r($a1);
echo "<br/>";
$a2 = array_slice($a,3,$num);//你寫成($a,1000,$num) 可能不準,不過就是999或者1001,你可以試一下
print_r($a2);
echo "<br/>";
$a3 = array_slice($a, 6,$num);//你寫成($a,2000,$num)
print_r($a3);
}
sliceArr($a);

富國滬深
TA貢獻1790條經驗 獲得超9個贊
$array = range(0,4999);
function fenge($arr,$group)
{
$newArr = [];
for ($i=0; $i < count($arr); $i++) {
$newArr[floor($i/$group)][$i] = $arr[$i];
}
return $newArr;
}
echo '<pre>';
print_r(fenge($array,500));
- 2 回答
- 0 關注
- 119 瀏覽
添加回答
舉報
0/150
提交
取消