PHP:数组的索引、元素、键和值有区别吗?它们是同一回事吗?

9
处理 PHP array 时,常常会听到以下术语: Array KeyArray IndexArray ElementArray Value 请简单地说明每个术语的基本含义。
它们有什么区别?它们都是指同一件事吗?
在哪里使用哪个?以及何时使用?
任何带有简单用例示例的澄清将不胜感激。
即:在这样一个数组中:array($a,$b,$c,$d=>$e) 会是什么?
提前感谢。
4个回答

5

数组是元素的集合。
每个元素都有键和值。键可以是整数(索引)或字符串。
在您的情况下,

array($a, $b, $c, $d=>$e)

可以重写为

array(0 => $a, 1 => $b, 2 => $c, $d => $e);  

0、1、2 和 $d 是数组的键名。
可以将 0、1、2 分别看作值 $a、$b、$c 的索引,$d 是 $e 的键名。

.


“value.Key” 是什么意思? - Universal Grasp
那么,如果我想检查 $a$b$c 是否存在或被放置在那里,应该使用什么 function?在 PHP 中是否有任何 function 可以检查一个 Index 是否存在或可用? - Universal Grasp
再次感谢。我查看了网站,但没有使用“索引”“数组”的示例。所有示例都有“键=>值”设置。如何在基本的“索引”“数组”中实现相同的功能,例如array($a,$b,$c) - Universal Grasp
1
array_key_exists("0", array($a, $b, $c)), array_key_exists("1", array($a, $b, $c)), array_key_exists("2", array($a, $b, $c)) 或者你也可以使用isset。 - Tarun
成功地完成了... 是的,它起作用了,非常感谢您的解释。我接受了您的答案。 - Universal Grasp

1

关键字 == 索引,元素 == 值


1
你能解释一下吗?在一个数组中像这样:array($a,$b,$c,$d=>$e),会是什么结果? - Universal Grasp

0

那将是:

array(
    0  => $a, // index: 0, value : $a
    1  => $b, // index: 1, value : $b
    2  => $c, // index: 2, value : $c
    $d => $e  // index: $d, value : $e
)

ElementKey呢?为什么只有indexvalue?我真的很困惑。 - Universal Grasp
正如@enumag已经告诉你的那样,“key”类似于“index”,而“element”类似于“value”。;) - Eduardo Casas

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接