一.数组的分类与定义
分类:
1.索引数组 $array = array(1,2,3,4,5);
2.关联数组 $array=array(1=>"aa","bb"=>2);
定义:
1.直接为数组元素赋值即可声明数组
<?php $countact1[0]=1; $countact1[1]="高某"; $countact1[2]="A公司"; $countact1[3]="北京市"; $countact1[4]="(010)987654321"; $countact1[5]="gao@brophp.com";
2.使用array()函数声明数组
$contact = array(1,"高某","A公司","北京市","(010)9876554321","gao@brophp.com");
二.取值
1. 索引数组取值:
$array[0] ; //用索引号来取值
2.关联数组取值:
$array["bb"]; //用key取值
三.遍历数组
1.for循环
//for循环遍历,针对于索引数组,不能遍历关联数组 for($i=0;$i<count($attr);$i++) { echo $attr[$i]."<br>"; }
2.foreach
foreach($array as $value)
foreach($array1 as $key => $value)
//foreach遍历,可以遍历索引数组和关联数组 foreach($attr as $value) { echo $value."<br>"; } foreach($attr as $key=>$value) { echo $key."=>".$value."<br>"; }
3.each()函数
返回数组中当前的键/值对并将数组指针向前移动一步
reset() 将指针重置第一
//each()函数,取数组里面的某一个元素,依次向下取值,将该元素以数组的形式返回 print_r(each($attr)); echo "<br>"; print_r(each($attr)); echo "<br>"; print_r(each($attr)); echo "<br>--------------------------"; //将指针复位,指向第一个元素 reset($attr); print_r(each($attr)); echo "<br>"; print_r(each($attr)); echo "<br>"; print_r(each($attr));
4.list()函数
从数组中取值赋给一组变量
//list()函数 list($a,$b,$c,$e,$f) = $attr; echo $a; echo $b; echo $c; echo $e; echo $f;
5.each()和list()结合
while(list($key,$value) = each($arr))
//用each()和list()函数遍历数组,索引数组和关联数组都可以 list($key,$value) = each($attr); echo $key."=>".$value; list($key,$value) = each($attr); echo $key."=>".$value; while(list($key,$value) = each($attr)) { echo $key."=>".$value."<br>"; }
6.使用指针
取得目前指针位置的内容资料 current()
取得目前指针位置的索引值 key()
将数组的内部指针倒回一位 prev()
将数组的内部指针向前移动一位 next()
将数组的内部指针指向最后一个单元 end()
将数组的内部指针指向第一个单元 reset()
$attr = array("one"=>10,"2"=>"aa","three"=>20); echo current($attr); //取当前指针指向的内容value echo key($attr); //取当前指针指向的索引key echo "<br>"; next($attr); //将指针向下移动 echo current($attr); //取当前指针指向的内容value echo key($attr); //取当前指针指向的索引key echo "<br>"; prev($attr); //将指针向上移动 echo current($attr); //取当前指针指向的内容value echo key($attr); //取当前指针指向的索引key echo "<br>"; end($attr); //将指针指向最后一个元素 echo current($attr); //取当前指针指向的内容value echo key($attr); //取当前指针指向的索引key echo "<br>"; reset($attr); //将指针复位 echo current($attr); //取当前指针指向的内容value echo key($attr); //取当前指针指向的索引key echo "<br>";
7.预定义数组
声明为全局变量 global
引用全局作用域中可用的全局变量 $GLOBALS
服务器和执行环境信息 $_SERVER
环境变量 $_ENV
HTTP GET 变量 $_GET
HTTP POST 变量 $_POST
HTTP Request 变量 $_REQUEST
HTTP 文件上传变量 $_FILES
Session 变量 $_SESSION
HTTP Cookies $_COOKIE