本文实例讲述了php array_chunk()函数用法与注意事项。分享给大家供大家参考,具体如下:
定义和用法
array_chunk()
函数把数组分割为新的数组块。
其中每个数组的单元数目由 size 参数决定。最后一个数组的单元数目可能会少几个。
可选参数 preserve_key 是一个布尔值(默认false),它指定新数组的元素是否有和原数组相同的键(用于关联数组),还是从 0 开始的新数字键(用于索引数组)。默认是分配新的键。
例如:
$arr = [1,2,3,4,5,6,7,8,9,10];
$arr = array_chunk($arr,2);
//则: $arr = [[1,2],[3,4],[5,6],[7,8],[9,10]];
print_r($arr);
运行结果:
Array
(
[0] => Array
(
[0] => 1
[1] => 2
)
[1] => Array
(
[0] => 3
[1] => 4
)
[2] => Array
(
[0] => 5
[1] => 6
)
[3] => Array
(
[0] => 7
[1] => 8
)
[4] => Array
(
[0] => 9
[1] => 10
)
)
$arr = [0=>'lily',1=>'lala',2=>'yaya',3=>'nini',4=>'maya',5=>'lant'];
$arr = array_chunk($arr,2,true);
//则:$arr = [[0=>'lily',1=>'lala'],[2=>'yaya',3=>'nini'],[4=>'maya',5=>'lant']];
print_r($arr);
运行结果:
Array
(
[0] => Array
(
[0] => lily
[1] => lala
)
[1] => Array
(
[2] => yaya
[3] => nini
)
[2] => Array
(
[4] => maya
[5] => lant
)
)
如果第三参数为false。则会分派新的键,都是从0开始了。
值得注意的是,当使用array_chunk()
分割数组,插入数据库时,如果 分割的数组不是等份的时候,则可能导致 数据库自增id 不连续,所以有需求 自增id连续的话,尽量使 array_chunk()
分割的新数组为等份的来避免一些问题。
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数组(Array)操作技巧大全》、《php排序算法总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《php字符串(string)用法总结》及《PHP常用遍历算法与技巧总结》
希望本文所述对大家PHP程序设计有所帮助。
您可能感兴趣的文章:- 浅谈php数组array_change_key_case() 函数和array_chunk()函数
- php使用array_chunk函数将一个数组分割成多个数组
- php中利用explode函数分割字符串到数组
- php把字符串指定字符分割成数组的方法
- 支持中文的PHP按字符串长度分割成数组代码
- php通过数组实现多条件查询实现方法(字符串分割)
- php将字符串随机分割成不同长度数组的方法
- php数组函数序列之array_unique() - 去除数组中重复的元素值
- php数组函数序列之array_keys() - 获取数组键名
- php数组函数序列之array_key_exists() - 查找数组键名是否存在
- php数组查找函数in_array()、array_search()、array_key_exists()使用实例