php array_chunk()函数用法与注意事项

yipeiwu_com6年前PHP代码库

本文实例讲述了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中使用正则表达式进行查找替换

1. preg_match — 执行一个正则表达式匹配int preg_match ( string $pattern , string $subject [, array &$matc...

PHP实现的无限分类类库定义与用法示例【基于thinkPHP】

本文实例讲述了PHP实现的无限分类类库定义与用法。分享给大家供大家参考,具体如下: /* 功能:基于TP2.0的无限分类。 用法: 第一种用法,不采用数据库,可以不需要TP,例子如下...

PHP 数组和字符串互相转换实现方法

复制代码 代码如下:$array=explode(separator,$string); $string=implode(glue,$array);使用和理解这两个函数的关键之处是分隔符...

php生成二维码时出现中文乱码的解决方法

本文实例讲述了php生成二维码时出现中文乱码的解决方法。分享给大家供大家参考。具体分析如下: 最近做了个扫描二维码得到vcard的项目,遇到一个问题,有一部分生成完的二维码,用andro...

PHP实现的策略模式简单示例

本文实例讲述了PHP实现的策略模式。分享给大家供大家参考,具体如下: 比如说购物车系统,在给商品计算总价的时候,普通会员肯定是商品单价乘以数量,但是对中级会员提供8者折扣,对高级会员提供...