PHP->数组
PHP 中的 数组 实际上是一个有序映射。映射是一种把 values 关联到 keys 的类型。此类型在很多方面做了优化,因此可以把它当成真正的数组,或列表(向量),散列表(是映射的一种实现),字典,集合,栈,队列以及更多可能性。由于数组元素的值也可以是另一个数组,树形结构和多维数组也是允许的。
自 5.4 起可以使用短数组定义语法,用 [] 替代 array()。
key 可以是 integer 或者 string 。value 可以是任意类型
key 有如下的强制转换:
1. 包含有合法整型值的字符串会被转换为整型。例如键名 “8” 实际会被储存为 8。但是 “08” 则不会强制转换,因为其不是一个合法的十进制数值。
2. 浮点数也会被转换为整型,意味着其小数部分会被舍去。例如键名 8.7 实际会被储存为 8。
3. 布尔值也会被转换成整型。即键名 true 实际会被储存为 1 而键名 false 会被储存为 0。
4. Null 会被转换为空字符串,即键名 null 实际会被储存为 “”。
5. 数组和对象不能被用为键名。坚持这么做会导致警告:Illegal offset type。
php的多维数组与python类似,数据访问格式也相同。
<?php
$array = array(
"foo" => "bar" ,
42 => 24 ,
"multi" => array(
"dimensional" => array(
"array" => "foo"
)
)
);
var_dump ( $array [ "foo" ]);
var_dump ( $array [ 42 ]);
var_dump ( $array [ "multi" ][ "dimensional" ][ "array" ]);
?>