php 提示未定义数组索引是什么意思?

关注者
2
被浏览
1,219

2 个回答

数组有索引数组和关联数组。

例:

索引数组 $arr = [1,2,3]

索引(也可称为下标)从0开始,最大索引是数组长度减1。超过最大索引去访问数组元素就会提示数组越界。索引数组元素是通过索引访问的,上面示例中最后一个元素的值虽然是3,但它的索引是2,所以应该这样获取它的值$arr[2]

关联数组 $arr = [ 'one' => 1, 'two' => 2, 'three' => 3]

关联数组元素具有键和值,比如上例中第一个数组元素键为one,值为1。关联数组元素是通过键名访问的,例如: $arr['one'] 其实这里的键可以理解为索引数组的索引, 当你访问一个不存在的键时,例: $arr['four'] 就会提示你问题中的错误: 未定义的数组索引