PHP数组的底层实现是分散列表,也称为hashTable,分散列表是基于键(Key)直接访问存储位置的数据结构,其key-value之间存在映射功能,key可以根据映射功能直接索引对应的value值,不需要通过关键词进行比较,理想的情况下,分散列表的检索效率非常高,时间复杂性为O(1)。

从源代码可以看到zend_array的构造。
php数组的索引格式数组可分为三种类型:
1、索引数组,一般表示数组元素在数组中的位置,它由数字组成,下标从 0 开始,数字索引数组默认索引值就是从数字 0 开始的,不需要特别指定,PHP 会自动为索引数组的键名赋一个整数值,然后从这个值开始自动增量,当然,也可以指定从某个位置开始保存数据。
2、关联数组,其下标(键名)由数值和字符串混合的形式组成;
3、多维数组,包含一个或多个数组的数组。
在 PHP 中,可以用来访问数组的元素的是数组索引(Array Index)。
数组索引是用来获取数组中特定元素的值,数组索引从 0 开始。例如,如果您有一个数组 $myArray,则可以使用 $myArray[0] 来获取数组的第一个元素,$myArray[1] 来获取数组的第二个元素,以此类推。
您也可以使用数组下标(Array Subscripting)来访问数组中的元素,数组下标从 1 开始。例如,如果您有一个数组 $myArray,则可以使用 $myArray[0] 来获取数组的第一个元素,$myArray[1] 来获取数组的第二个元素,以此类推。
您还可以使用循环来遍历数组中的所有元素,例如:
这将输出以下内容:
所以,要回答您的问题,PHP 中可以用来访问数组的元素的是数组索引(Array Index)和数组下标(Array Subscripting)。