为了账号安全,请及时绑定邮箱和手机立即绑定

请问一个一维数组有3000个元素 怎么把它分割成3个1000个元素的一维数组?

请问一个一维数组有3000个元素 怎么把它分割成3个1000个元素的一维数组?

PHP
杨__羊羊 2023-04-01 13:09:17
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);请大神帮忙最好写个方法,谢谢。给加分为了解决oracle ,sql ,in 的问题
查看完整描述

2 回答

?
料青山看我应如是

TA贡献1772条经验 获得超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);


查看完整回答
反对 回复 2023-04-03
?
当年话下

TA贡献1890条经验 获得超9个赞

$arr=array();for($i=1;$i<=3000;$i++){    $arr[$i-1]=$i;}$one=array();$two=array();$three=array();$oneindex=0;$twoindex=0;$threeindex=0;for($j=0;$j<count($arr);$j++){    if($j<1000){        $one[$oneindex]=$arr[$j];        $oneindex++;    }else if($j>=1000&&$j<2000){        $two[$twoindex]=$arr[$j];        $twoindex++;    }else if($j>=2000&&$j<3000){        $three[$threeindex]=$arr[$j];        $threeindex++;    }}echo count($one);echo count($two);echo count($three);print_r($three);

这样就可以了


查看完整回答
反对 回复 2023-04-03
  • 2 回答
  • 0 关注
  • 110 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信