php数组--2017-04-16
一、定义数组
(1)索引数组
$arr=array(1,2,3,3);
(2)关联数组 类似于集合
$arr1=array("one"=>"111","two"=>"222");
(3)赋值定义数组:
$arr2["one"]="aaaa";
注:
强类型语言数组的三个特点:
1、 数组里面只能存储同类型数据
2、 数组的长度固定
3、 在内存里是连续的
Php属于弱类型语言
二、数组操作
1、数组取值
(1)var_dump($arr1);
(2)$arr1["two"];
2、删除元素
unset($arr[0]);
3、添加元素
$arr2[key]=value;
4、追加元素(在最后一个数组后面添加)
(1)$arr2[]=1;
(2)array_push($arr,12);
三、遍历数组 (第二种重要)
1、for循环 只能遍历索引数组
$arr=array(1,2,3,3);
for ($i=0;$i<count($arr);$i++){
echo $arr[$i]."<br />";
}
$arr1=array("one"=>"111","two"=>"222");
2、foreach循环 第一次循环把1交给v,第二次把2交给v 可以遍历索引和关联数组
/*$arr=array(1,2,3,3);
foreach($arr as $v)
{
echo $v."<br />";
}
foreach($arr as $k=>$v)
{
echo $k."----".$v."<br />";
}
注:
(1)强类型语言 foreach(int i in arr) {}
(2)js for (var a in arr){} a取出的是key
3、list()函数和each()函数结合遍历
(1)$arr=array(1,2,3,3);
var_dump(each($arr));
取出当前指针指向的元素,返回新的数组(该数组包含key和value,,将指针向后移一个)
(2)list($a,$b,$c,$d)=$arr; //将右侧数组的元素交给一组变量
echo $c;
$arr=array(1,2,3,3);
while (list($k,$v)=each($arr)){
echo "{$k}={$v}<br />";
}
4、指针遍历
next($arr); //将指针向后挑一个
prev($arr); //将指针向前挑一个
reset($arr);//重置指针
end($arr);//将指针达到最后一个
echo current($arr); //取当前指针指向的元素的值
echo key($arr) //取当前指针指向的元素的//索引
do
{current($arr) // 先执行循环体后走条件
}
while{next($arr)
}
注: while循环:先走条件后走循环体 while循环无法输出第一个数,所以此处不用while循环
Eg:
while (list($k,$v)=each($arr)){
echo "{$k}={$v}<br />";
}
reset($arr); // 不加这个输出5个,不然10个
while (list($k,$v)=each($arr)){
echo "{$k}={$v}<br />";
}
四、五如下: