PHP把数组按指定的个数分隔
2024-09-03 03:45:36
PHP把数组按指定的个数分隔
假设数组为array(‘1’,‘2’,‘3’,‘4’,‘5’,‘6’); 想把它分割成四个,那么结果为
array(
‘0’ => [‘1’,‘2’],
‘1’ => [‘3’,‘4’],
‘2’ => [‘5’],
‘3’ => [‘6’],
);
https://blog.csdn.net/justflyhigh/article/details/7708145
部分内容借鉴以上文章,实现的结果不一样,如果我的函数功能不是你想要的,可以去以上文章看一下。
/**
*
* 把数组按指定的个数分隔
* @param array $array 要分割的数组
* @param int $groupNum 分的组数
*/
function splitArray($array, $groupNum){
if(empty($array)) return array();
//数组的总长度
$allLength = count($array);
//个数
$groupNum = intval($groupNum);
//取余
$yu = (int)($allLength%$groupNum);
//取整
$zheng = (int)(($allLength-$yu)/$groupNum);
//结果集
$result = array();
//算出小数组可以有几个元素
$s = array();
if($yu > ){
for ($i=; $i <$groupNum; $i++) {
$s[$i] = $zheng;
if($yu>=){
$s[$i] = $s[$i]+;
}
$yu = $yu-;
}
}else{
return array_chunk($array, $zheng);
}
foreach ($s as $k => $v) {
for ($i=; $i < $v; $i++) {
$result[$k][] = array_shift($array);
}
}
return $result;
}
最新文章
- 原生Ajax封装随笔
- SQL Server系统表sysobjects介绍与使用(转))
- IIS7.5
- Extjs TabPanel 选项卡延迟加载
- [python] 线程池
- ARM状态和THUMB状态
- 启动tomcat不出现命令窗口
- 转载Mongondb
- openSUSE13.2安装ruby和rails
- mac下firefox复制粘贴失效解决办法
- 批量执行sql语句
- 手把手教你Windows下Go语言的环境搭建
- thinkphp框架使用心得
- Surrounded Regions——LeetCode
- angularjs路由path方式实现原理探究
- Ubuntu 14.04循环登录问题(密码正确,无法登录)
- 把已经安装到C盘的软件完美移动到D盘
- Oracle 创建表并设置主键自增
- spring-boot 1.X集成swagger
- sys安装