一.数组概念
数组可以理解为有序的(键-值)对组成的数据值的集合;
如果我们把变量理解为单个值的容器,那么数组就是可以包含多个值的容器;
根据索引值的不同数组分为:索引数组和关联数组;
arr(key=>value,key=>value)
二.创建数组
与其他语言的数组实现方式不同,php不需要在创建数组时指定其大小;
因为php是一种松散类型的语言,所以甚至不需要在使用前声明;
索引可以是整形数字或者是字符串;
索引数组:索引为整数,如果没有指定索引值则默认为0,依次递增;
关联数组:索引为字符串的数组;
直接对数组变量赋值$arr[key]=value
使用函数创建数组 range()
建立一个包含指定范围单元的数组
三.删除数组或者数组元素
uset
释放给定的变量
注意:删除数组元素不会重建索引值
四.常用的数组函数
print_r($arr)
打印数组count($arr)
取得数组大小in_array("n",$arr)
检查数组是否包含某个值
//声明数组
$arr = array("a","b","c","d");
//判断是否有"a";
if(in_array("a",$arr)){
echo("有");
}else{
echo("没有");
}
五.遍历数组
- for 循环遍历数组
- foreach 循环遍历数组
- 使用数组指针遍历数组
key() 返回数组当前指针元素的索引
current() 返回数组当前指针元素的值
next() 将数组指针向前移动一位,并返回当前指针元素的值;如果超出了数组元素的末尾,返回bool值
prev() 将数组指针往回移动一位,并返回当前指针元素的值,如果本来就在第一位值返回false
reset() 将指针指向第一个元素,并返回第一个元素的值
end() 将指针指向最后一个元素,并返回最后一个元素的值
each() 返回数组当前指针的元素的键和值,并将指针推进一个位置,如果指针越过了数组的末端,则返回false
六.数组排序
sort()
rsort()
对数组的value值进行升序和降序ksort
krsort
对数组按索引进行升序或降序,并保持索引关系
$arr = array("b","a","c","d");
ksort($arr);
print_r($arr);
krsort($arr);
print_r($arr);
sort($arr);
print_r($arr);
rsort($arr);
print_r($arr);
七.字符串与数组转换
- explode()返回由字符串组成的数组
- implode()将数组元素连接成字符串
$str = "烧鸭,鸡腿";
$arr = explode(",",$str);
print_r($arr);
$str = implode("拼",$arr);
echo $str;