在PHP中,有没有在使用它之前定义数组的目的?

时间:2013-11-05 18:33:54

标签: php arrays multidimensional-array

考虑一大堆这样的PHP代码:

$example = array ( 'Location' => 'farm', 'Name' => 'billy', 'Meal' => array());
$example['Meal'] = array('Fruit' = > 'apple', 'Soup' => 'tomato', 'Drink' => 'wine');

预先定义'Meal'子数组是否有任何好处或理由,而不是简单地写:

$example = array ( 'Location' => 'farm', 'Name' => 'billy');
$example['Meal'] = array('Fruit' = > 'apple', 'Soup' => 'tomato', 'Drink' => 'wine');

2 个答案:

答案 0 :(得分:5)

简而言之,不,除非您打算在创建它和添加'Meal'子数组之间检查$example数组。事实上,在第一个例子的第二行,你只是覆盖了你最初分配给它的东西。

例如,如果您想在最初创建$example后在子数组上使用Array操作,则可以采用第一种方式。但是,如果你以后只是通过转让来覆盖它,那就不行了。

答案 1 :(得分:1)

不是你的情况,但是如果你想在array_push()这样的数组函数中使用那个变量,那么它确实需要先声明。如果你知道它将成为一个数组,那么最好先声明它。