1.数组定义
定义方式不同
数组里面可以放任何类型的数据
1).索引数组
$attr = array(1,2,3,"aa");
print_r($attr);
2).关联数组
$attr = array("one"=>10,"two"=>"aa","three"=>20);//key=>value print_r($attr); echo $attr['two']; //关联数组只能用Key来取
2.遍历数组
for循环遍历,只能遍历索引数组,不能遍历关联数组
$attr = array(1,2,3,"aa"); for($i = 0; $i<count($attr);$i++) { echo $attr[$i]; }
foreach遍历,可以遍历关联数组 和 索引数组
//只遍历值 foreach($attr as $value) { echo $value; } //遍历键和值 for($attr as $key=>$value) { echo $key."=>".$value; }
each()函数 list()函数
//each() 函数,去数组里面的某一个元素,依次向下取值,将该元素以数组的形式返回 $attr = array("one"=>10,"2"=>"aa","three"=>20); print_r(each($attr)); print_r(each($attr)); print_r(each($attr)); echo "------------------------" reset($attr);//指针复位,指向第一个元素
//list() 函数 $attr = array(1,2,3,4,"aa"); list($a,$b,$c) = $attr; echo $a; echo $b; echo $c; list(,,,,$f)=$attr
//each() 和 list() 遍历数组,索引数组和关联数组都可以 $attr = array("one"=>10,"2"=>"aa","three"=>20); while(list($key,$value)=each(attr)) { echo $key."=>".$value."<br>"; }
3.指针
current($attr);//取当前指针指向的内容 value key($attt);//取当前指针指向的索引 key next($attr);//将指针向下移动 prev($attr);//将指针向上移动 end($attr);//将指针指向最后一个元素 reset($attr);将指针复位 //遍历 do { echo key($attr); echo current($attr); echo "<br>"; } while (next($attr))
4.预定义数组
$_SERVER 服务器和执行环境信息 $_GET $_POST $_REQUEST $_FILES $_COOKIE $_SESSION