将项添加到嵌套数组

时间:2011-03-25 01:38:10

标签: php html css arrays

我使用此代码在数组中创建数组。

array_push($lists, $list);

然后我尝试将项添加到嵌套数组中:

array_push($lists[$list], $item);

但是得到一个错误:

Warning: array_push() expects parameter 1 to be array, null given in V:\home\..

$list是一个名称,$item是一个对象。

如何解决问题?

2 个答案:

答案 0 :(得分:2)

这是因为第一个参数为null。假设您使用默认索引,您可以执行以下操作:

$numItems = array_push($lists,$list);
array_push($lists[$numItems-1],$item)

答案 1 :(得分:1)

这会在$list 的末尾推送$lists并为其提供一个整数键

array_push($lists, $list);

这会尝试将字符串键访问到$lists,但不存在:

$lists[$list]

所以返回值为null。最后,就像你做的那样

array_push(null, $item);

对于解决方案,除了推送它之外,我们需要知道您是否在$lists上做了什么。如果你不是,那么:

$pushed_id = array_push($lists, $list) - 1;
array_push($lists[$pushed_id], $item);