来源:未知 时间:2017-08-18 11:29 作者:xxadmin 阅读:次
[导读] 这篇文章介绍了PHP中数组定义的几种方法,有需要的朋友可以参考需要...
Array 数组 PHP 中的数组实际上是一个有序映射。映射是一种把 values 关联到 keys 的类型。此类型在很多方面做了优化,因此可以把它当成真正的数组,或列表(向量),散列表(是映射的一种实现),字典,集合,栈,队列以及更多可能性。由于数组元素的值也可以是另一个数组,树形结构和多维数组也是允许的。 一般来说定义方法如下面几种: 方法一: $a=array(1,2,4,5,6); <?php $array=array('a','b','c'); $array[]='simon'; print_r($array); ?> 运行结果如下所示。 方法二: $a=array(key1=>value1,key2=>value2,key3=>value3); 方法三: $a[key1]=value1; $a[key2]=value2; 方法四:通过中括号[]定义数组 php 5.4版以后可以这么写,新增的数组简写语法。 php 5.3版及以前的版本不接受这么写... $data = [ 'start_time' => '123', 'end_time' =>'456' ]; 解释这些结构超出了本手册的范围,但对于每种结构至少会提供一个例子。要得到这些结构的更多信息,建议参考有关此广阔主题的其它著作。 语法 定义数组 array() 可以用 array() 语言结构来新建一个数组。它接受任意数量用逗号分隔的 键(key) => 值(value)对。 array( key => value 自 5.4 起可以使用短数组定义语法,用 [] 替代 array()。 Example #1 一个简单数组 "bar", "bar" => "foo", ); // 自 PHP 5.4 起 $array = [ "foo" => "bar", "bar" => "foo", ]; ?> key 可以是 integer 或者 string。value 可以是任意类型。 此外 key 会有如下的强制转换: 包含有合法整型值的字符串会被转换为整型。例如键名 "8" 实际会被储存为 8。但是 "08" 则不会强制转换,因为其不是一个合法的十进制数值。 Example #2 类型强制与覆盖示例 "a", "1" => "b", 1.5 => "c", true => "d", ); var_dump($array); ?> 以上例程会输出: array(1) { PHP 数组可以同时含有 integer 和 string 类型的键名,因为 PHP 实际并不区分索引数组和关联数组。 如果对给出的值没有指定键名,则取当前最大的整数索引值,而新的键名将是该值加一。如果指定的键名已经有了值,则该值会被覆盖。 Example #3 混合 integer 和 string 键名 "bar", "bar" => "foo", 100 => -100, -100 => 100, ); var_dump($array); ?> 以上例程会输出: array(4) { Example #4 没有键名的索引数组 以上例程会输出: array(4) { Example #5 仅对部分单元指定键名 "c", "d", ); var_dump($array); ?> 以上例程会输出: array(4) { 用方括号语法访问数组单元 ¶ 数组单元可以通过 array[key] 语法来访问。 Example #6 访问数组单元 "bar", 42 => 24, "multi" => array( "dimensional" => array( "array" => "foo" ) ) ); var_dump($array["foo"]); var_dump($array[42]); var_dump($array["multi"]["dimensional"]["array"]); ?> 以上例程会输出: string(3) "bar" 自 PHP 5.5 起可以用数组间接引用一个数组原型。 Example #7 数组间接引用 Note: 更多内容可以参考这篇文章:http://www.php.net/manual/zh/language.types.array.php |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com