php 把一个数组分成几个数组


 

<?php
/* *
 * 把一个数组分成几个数组
 * $arr 数组
 * $num 获取的数量
 * */
function sliceArr($arr, $num)
{
    //数组的个数
    $listcount = count($arr);
    /*if($listcount < $num){
        //数组总数不能少于需要获取的数量
        return [];
    }*/
    $num = $listcount < $num ? $listcount:$num;
    //分成$num 个数组每一个数组是多少个元素
    $parem = floor($listcount / $num);
    //分成$num 个数组还余多少个元素
    $paremm = $listcount % $num;
    $start = 0;
    $new_array = [];
    for ($i = 0; $i < $num; $i++) {
        $end = $i < $paremm ? $parem + 1 : $parem;
        $new_array[$i] = array_slice($arr, $start, $end);
        $start = $start + $end;
    }

    return $new_array;
}


$arr = array(1, 3, 4,5,6,7,8,9,10);
echo '<pre>';
print_r(sliceArr($arr, 4));
die;

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM