我有两个数组,其中包含一些样本数据,我只想确认我的术语是否正确:
多维阵列:
$names = array([
"name" => "Bob",
"age" => 25,
"level" => 6],
["name" => "Joe",
"age" => 34,
"level" => 6]
);
多维关联数组:
$names = array(
"Bob" => array(
"age" => 25,
"diploma" => "DAC",
"level" => 6),
"Joe" => array(
"age" => 34,
"diploma" => "DAC",
"level" => 6)
);
第二个是关联性,因为索引是名称而不是索引号;多维性 我知道这并不是一个真正需要代码解决方案的编程问题,我只是在学习术语。
我加了两美分。其他人说的都很正确,但是:与关联数组和"简单"数组的主要区别。使用"简单"阵列,您可以执行类似的操作
for( $i = 0; $i < count( $array ) - 1; $i++ ) {
$element = $array[ $i ];
// Do something with $element
}
使用关联数组,您无法做到这一点,如果您想遍历所有数组,您必须执行类似的操作
foreach( $array as $key => $element ) {
// Do something with $element
}
这种方法(foreach)也可以应用于"简单"数组,而第一种方法只能应用于"简易"数组
多维数组是简单的数组,至少有一个元素是数组,无论的"类型"如何
顺便说一句,它总是把数组看作关联数组。它可以防止以后在上出现一些非常简单的错误
这两个数组都是多维关联数组。
但在第二个数组中,只需使用Bob或Joe的名称作为关键字,就可以获得他们的详细信息。例如,要获取Bob的详细信息,您只需致电:
$names['Bob']
在第一个数组中,您必须知道存储Bob详细信息的数组的id或索引。