首页 >后端开发 >php教程 >php按指定个数分隔数组

php按指定个数分隔数组

WBOY
WBOY原创
2016-07-25 08:54:181084浏览
  1. /**

  2. * 把数组按指定的个数分隔
  3. * @param array $array 要分割的数组
  4. * @param int $groupNum 分的组数
  5. */
  6. public function splitArray($array, $groupNum){
  7. if(empty($array)) return array();
  8. //数组的总长度

  9. $allLength = count($array);
  10. //个数

  11. $groupNum = intval($groupNum);
  12. //开始位置

  13. $start = 0;
  14. //分成的数组中元素的个数

  15. $enum = (int)($allLength/$groupNum);
  16. //结果集

  17. $result = array();
  18. if($enum > 0){

  19. //被分数组中 能整除 分成数组中元素个数 的部分
  20. $firstLength = $enum * $groupNum;
  21. $firstArray = array();
  22. for($i=0; $i array_push($firstArray, $array[$i]);
  23. unset($array[$i]);
  24. }
  25. for($i=0; $i
  26. //从原数组中的指定开始位置和长度 截取元素放到新的数组中

  27. $result[] = array_slice($firstArray, $start, $enum);
  28. //开始位置加上累加元素的个数

  29. $start += $enum;
  30. }
  31. //数组剩余部分分别加到结果集的前几项中
  32. $secondLength = $allLength - $firstLength;
  33. for($i=0; $i array_push($result[$i], $array[$i + $firstLength]);
  34. }
  35. }else{
  36. for($i=0; $i $result[] = array_slice($array, $i, 1);
  37. }
  38. }
  39. return $result;
  40. }
复制代码


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn