本文介绍下,php数组的一些知识,作为学习php数组的入门参考,希望对初学php的朋友有一定的帮助。一,php数组的定义
php数组表示一组相关联的数据。
在 php 中,用 array() 定义一个数组。例子:
其中,$a = array(orange, apple,peach); 定义了一个数组变量,该数组有三个数据。
数组的每个值之间用逗号分隔。
下面的语句echo $a[0] 表示输出数组的第一个值,即orange。注意,数组是以0为基数,而不是1。数组变量方括号 [] 里的值,我们称为数组的索引 key。数组是 key-value 一一对应的组合
数组的基本单位是元素 (elements)。每个元素由一对索引(key,也称为“键”) 和值(value) 组成。
每个值,都有一个相对应的索引 (key)。通过指明数组的 key,我们获取相对应的值,比如 $a[0]。
前面示例的数组定义方法,是数组定义的一种简写方式,没有定义数组每个值的 key。在缺省情况下,如果不定义数组每个值的 key,key 就从 0 开始每次自动加 1。
$a = array(orange, apple,peach);$a = array(0=>orange, 1=>apple,2=>peach);
上面两句代码效果是一样的,第一句没有指定数组的 key,系统就自动给数组的每个值加 key,key 的值从0开始每次加1。第二句代码,是在定义数组的时候,给数组的每个值加赋予对应的key。
定义数组中一对 key-value 的写法是:key=>value,比如 0=>orange表示 key 为 0,对应的值为 orange。
指定 key 比不指定 key 的写法虽然复杂,但是也给予你设定 key 的自由度,你可以随意设定数组每个值的key。比如:
orange, 3=>apple,5=>peach);echo $a[1];?>
另外,数组的 key 还可以用字符串表示。注意:用字符串作 key,在指明 key 的时候,要加引号。比如:
windows xp, lang=>chinese,sp=>service pack 3);echo $a[os],
;echo $a[lang],
;echo $a[sp];?>
注:key 只能是整数和字符串。
定义数组还可以有另外一种方法,如下例:
$a[os] =windows xp;$a[lang] =chinese;$a[sp]=service pack 3;
效果和$a = array(os=>windows xp, lang=>chinese,sp=>service pack 3);一样。
二,修改数组
1,增加一个数组元素的语法:$array_name[key] = value
2,删除一个数组元素,使用 unset 函数,语法如下:unset($array_name[key])
增加和删除一个数组元素的示例如下,其中$a[c] = 300; 表示增加一个 key 为 c ,值为300 的数组元素;unset($a[b]); 表示删除一个 key 为 b的数组元素:
100, b=>200,d=>500);$a[c] = 300; unset($a[b]);foreach ($a as $key=> $value){ echo $key.: .$value.
;}?>
输出:a: 100d: 500c: 300
