我正在玩多维数组。我正在试图弄清楚如何填充数组数组的元素/对象。
我简化了我最终试图用汽车上的一个例子做的事情,但是这模仿了我想要的阵列结构,减去了更多的复杂性。
如果这个问题太明显或太愚蠢,请原谅。
它返回一个错误,我无法填充:array_push()期望参数1为数组,给定为null
如果第一个参数必须是数组,我如何填充某个数组的元素?
编辑:我想我发现我可以通过$ arr [0] [0] [0] = 100完成我想要的任务。但不是通过array_push();所以我的问题和我现在想知道的是heck array_push()应该用于什么?<!-- Array
(
[0] => Array
(
[0] => Array // Brand (Mercedes)
(
[0] => 100 // Quantity
[1] => 50000 // Price
[2] => Germany // Nationality
[3] => 1926 // Year Founded
[4] => Mercedes
)
[1] => Array // Brand (BMW)
(
[0] => 200 // Quantity
[1] => 20000 // Price
[2] => Japan // Nationality
[3] => 1933 // Year Founded
[4] => Nissan
)
)
) -->
<?php
$arr = array(array(array()));
array_push($arr[0][0][0], 100);
array_push($arr[0][0][1], 50000);
array_push($arr[0][0][2], Germany);
array_push($arr[0][0][3], 1926);
array_push($arr[0][0][4], Mercedes);
array_push($arr[0][1][0], 200);
array_push($arr[0][1][1], 20000);
array_push($arr[0][1][2], Japan);
array_push($arr[0][1][3], 1933);
array_push($arr[0][1][4], Nissan);
echo "<pre>";
print_r($arr);
?>
答案 0 :(得分:1)
您不需要array_push
。
您只需要:$arr[0][0][0] = 100;
PHP没有多维数组,它有数组数组。
答案 1 :(得分:1)
你可以试试这个
<?php
$arr = [];
$arr[0][0][0] = 100;
$arr[0][0][1] = 50000;
$arr[0][0][2] = "Germany";
$arr[0][0][3] = 1926;
$arr[0][0][4] = "Mercedes";
$arr[0][1][0] = 200;
$arr[0][1][1] = 20000;
$arr[0][1][2] = "Japan";
$arr[0][1][3] = 1933;
$arr[0][1][4] = "Nissan";
?>
array_push的作用是$array[] = "a"
,但它更常用于将多个值推送到数组中。
如果你使用array_push()将一个元素添加到数组中,那么它会更好 使用$ array [] =因为这样就没有调用a的开销 功能。 引自php.net