当数据不足时,创建列表会出错

时间:2015-02-11 13:22:34

标签: php

当没有足够的数据时,

创建列表会出错

我做了什么:

<?php
    $a=$b=$c=array();
    list($a,$b,$c) = array_chunk(array("A","B","C","D","E"), 3);
    echo "<pre>";
    print_r(array($a,$b,$c));
?>

得到如下错误:

Notice: Undefined offset: 2 in /var/www/html/test.php on line 13

如何解决?

在上述情况下,如果没有值,则将最后一个数组保留为空。

如何在3个数组中分配数据?如果没有足够的数据,则将最后一个数组保留为空。

2 个答案:

答案 0 :(得分:3)

list($a,$b,$c) = array_pad(array_chunk(array("A","B","C","D","E"), 3), 3, array());

如果数组中的元素较少,则array_pad将使用默认值填充它。

答案 1 :(得分:0)

错误只是说偏移是未定义的。 list函数只获得2个,但在代码中它需要3个。因此,如果您使用此代码,它将不会给您错误

<?php
    $a=$b=$c=array();
    list($a,$b) = array_chunk(array("A","B","C","D","E"), 3);
    echo "<pre>";
    print_r(array($a,$b,$c));
?>

或者,如果将数组分成两部分,它也可以工作,并将数组分成三部分。

 <?php
        $a=$b=$c=array();
        list($a,$b) = array_chunk(array("A","B","C","D","E"), 2);
        echo "<pre>";
        print_r(array($a,$b,$c));
    ?>

希望这有助于你