4.1 初识数组
4.1.1 什么是数组
数组是一个可以存储一组或者一系列数值的变量。在PHP中,数组中的元素分两部分,分别为键(Key)和值(Value)。其中,“键”为元素的识别名称,也被称为数组下标,“值”为元素的内容。“键”和“值”存在一种对应关系,称为映射。
1、索引数组
下标为整数的数组,即数组的“键”为整数,仅仅指示元素在数组中的位置,不表示对应值的含义
2、关联数组
下标为字符串的数组,即数组的“键”为字符串,显示时,以元素的添加顺序有关,与下标顺序无关
3、混合数组
数组的“键”既有整数,也有字符串的数组
4.1.2 数组的定义
1、使用赋值方式定义数组
<?php //**********定义索引数组**********// //方式1: $arr1[0]="欧阳华夏";//姓名 $arr1[1]=25;//年龄 $arr1[2]="男";//性别 $arr1[3]=true;//是否单身 echo "<pre>"; print_r($arr1); echo "</pre>"; /* 输出结果: Array ( [0] => 欧阳华夏 [1] => 25 [2] => 男 [3] => 1 ) */ //方式2: $arr2[]="欧阳华夏";//姓名 $arr2[]=25;//年龄 $arr2[]="男";//性别 $arr2[]=true;//是否单身 echo "<pre>"; print_r($arr2); echo "</pre>"; /* 输出结果: Array ( [0] => 欧阳华夏 [1] => 25 [2] => 男 [3] => 1 ) */ //方式3 $arr3=[0=>"欧阳华夏",1=>25,3=>"男",4=>true]; echo "<pre>"; print_r($arr3); echo "</pre>"; /* 输出结果: Array ( [0] => 欧阳华夏 [1] => 25 [2] => 男 [3] => 1 ) */ //**********定义关联数组**********// //方式4: $arr4["name"]="欧阳华夏";//姓名 $arr4["age"]=25;//年龄 $arr4["sex"]="男";//性别 $arr4["is_Single"]=true;//是否单身 echo "<pre>"; print_r($arr4); echo "</pre>"; /* 输出结果: Array ( [name] => 欧阳华夏 [age] => 25 [sex] => 男 [is_Single] => 1 ) */ //方式5 $arr5=["name"=>"欧阳华夏","age"=>25,"sex"=>"男","is_Single"=>true]; echo "<pre>"; print_r($arr5); echo "</pre>"; 输出结果: /* Array ( [name] => 欧阳华夏 [age] => 25 [sex] => 男 [is_Single] => 1 ) */ ?>
在上述示例代码中,分别定义了索引数组和关联数组
①方式1对应方式4,创建一个数组变量,使用赋值运算符挨个给数组变量赋值
②方式2创建数组,赋值时没有指定“键”,使用默认键,即“键”从0开始
③方式3对应方式5,在一个“[]”中使用“=>”符号给数组赋值
2、使用array()函数定义数组
除了通过赋值方式定义数组外,还可以使用array()函数定义数组,它接收数组的元素作为参数,多个元素之间使用英文逗号分隔;
<?php //**********定义索引数组**********// //方式1 $arr1=array("欧阳华夏",28,"男",true); //**********定义关联数组**********// $arr2=array("name"=>"欧阳华夏","age"=>28,"sex"=>"男","is_Single"=>true); ?>
4.1.3 数组元素的获取
获取数组中单个元素的值:
$数组名[键名]
打印数组的全部值:
<?php /************************方法1********************************/ echo "<pre>"; print_r("数组名") echo "</pre>"; /************************方法2********************************/ echo "<pre>"; var_dump("数组名") echo "</pre>"; ?>
PHP提供了print_r()函数和var_dump(),专门用于输出数组中的所有元素,需要注意一下几点:
①print_r()函数只能打印出来数组中的元素
②var_dump()函数在打印数组中元素的同时还能打印出元素中值的数据类型
③在上述代码中,都有两行echo "<pre>"代码,其中“pre”标签的作用是用格式化文本输出。
4.1.4 删除数组
PHP中提供了unset()函数用于删除数组的元素,使用规则:
①语法: unset(数组名[索引])
②删除元素后数组不会重建该元素的索引。即未被删除的元素的索引不会因为删除了元素而改变
③可以删除整个数组: unset(数组名)
4.1.5 数组操作符