我来自python背景,类似的python数据类型(字典)是一组无序的键值对。
我想知道PHP关联数组是否无序?他们似乎是有序的。
$test = array( 'test' => 'test', 'bar' => 'bar', );
var_dump($test);
var_dump(array_slice($test, 0, 1)); 测试总是在bar之前进行,我可以如您所见地对该数组进行切片。因此,是否始终保证可以跨php版本订购?该命令就是我声明数组的命令吗?因此,内部是否有某些东西指向“测试”以将[0]放置在数组中?我已经阅读了http://php.net/manual/en/language.types.array.php,但是在这个问题上并没有太多的启示。感谢您的答复。泰 问题来源于stack overflow
PHP关联阵列(以及数字阵列)是有序的,并且PHP提供的各种功能,以解决诸如数组键排序ksort(),uksort()和krsort()
此外,PHP允许您用数字键乱序声明数组:
$a = array(3 => 'three', 1 => 'one', 2 => 'two'); print_r($a);
Array ( [3] => three [1] => one [2] => two ) // Sort into numeric order ksort($a); print_r($a); Array ( [1] => one [2] => two [3] => three ) 从文档中:
PHP中的数组实际上是有序映射。映射是一种将值与键相关联的类型。该类型已针对多种不同用途进行了优化。可以将其视为数组,列表(向量),哈希表(地图的实现),字典,集合,堆栈,队列,甚至可能更多。由于数组值可以是其他数组,因此树和多维数组也是可能的。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。