数组的关联数组

时间:2015-08-11 23:07:49

标签: php arrays multidimensional-array

我遇到了以下代码,无法破译其使用方法。

(为简单起见,将变量名称改为一点)

$fooo = array(

 'dog' => array('pages', 'home'),

 'cat' => array('users', 'login'),

 'bird' => array('users', 'reset', 1),

);

我熟悉关联数组,但之前没有看过这个“嵌套数组”实现。

这段代码是否创建了一个数组数组?

例如,$fooo['dog']会返回$dog[0]='pages'$dog[1]='home'

的数组

这似乎不对。

1 个答案:

答案 0 :(得分:1)

是的,这是一个数组数组。但是将它描述为具有每个值的索引数组的关联数组可能更准确。

可以用以下方法完成:

$fooo['dog'] // gets array("pages", "home")
$fooo['bird'][0] // gets "users"
$fooo['cat'][1] // gets "login"
$fooo['cow'] = array('x', 'y'); // adds another value to the outer array
$fooo['bird'][] = 2; // $fooo['bird'] now equals array('users', 'reset', 1, 2)

此代码没有任何问题,但您的示例缺乏实用性。但是有很多代码使用这种结构。例如,网站上具有子菜单的菜单的逻辑表示(这似乎是您的样本的来源),然后可以循环此数据结构以生成HTML / CSS菜单。