用php写算法分割数组,不用array_chunk();算法如下所示。
<?php
//$array 数组
//$size 每个数组的个数
//每个数组元素是否默认键值
function array_chunk_list($array, $size, $preserve_keys = false)
{
reset($array);
$i = 0;
foreach ($array as $key => $value) {
// 是否存在这个值
if (! isset($newarray[$i])) {
$newarray[$i] = array();
}
if (count($newarray[$i]) < $size) { // 先判断的问题
if ($preserve_keys == false) {
$newarray[$i][] = $value;
} else {
$newarray[$i][$key] = $value;
}
} else {
$i++;
if ($preserve_keys == false) {
$newarray[$i][] = $value;
} else {
$newarray[$i][$key] = $value;
}
}
}
return $newarray;
}
$array=array(1,2,3,4,5,6,7);
print_r(array_chunk_list($array, 2,true));
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号