数组的几种遍历方法
数组必须是索引数组,而且下标还必须是连续的
* (索引数组下标还可以不连序,数组还有关联数组)
*
*
*2. 使用foreach语句循环遍历数组
* foreach(数组变量 as 变量值){ 遍历值* //循环体* }
* a. 循环次数由数组的元素个数决定
* b. 每一次循环都会将数组中的元素(值哦)分别赋值给后面变量
*
* foreach(数组变量 as 下标变量=> 值变量){遍历下标。当遇到关联数组的时候,遍历下标* * }
*3. while() list() each() 组合循环遍历数组
使用数组的内部指针控制函数next(数组);prev(数组);reset(数组)回到数组的第一个元素end(数组);current(数组);取当前数组元素的值key(数组);取当前数组元素的键值
*
* each()函数,
* a. 需要一个数组作为参数
* b. 返回来的也是一个数组
* c. 返回来的数组是0, 1, key, value四个下标(固定的)
* 0和key下标是当前参数数组元素的鍵
* 1和value下标是当前残数数组元素的值
*
* d. 默认认当前元素就是第一个元素
* e. 每执行一次后就会将当前元素向后移动
* f. 如果到最后的元素再执行这个函数,则返回false
*
* //Array ( [1] => 1 [value] => 1 [0] => id [key] => id )
*
while
*
list()函数:php中只有这一种形式,将数组付给一个函数
* a. list()=array(); 需要将一个数组赋值给这个函数
* b. 数组中的元素个数,要和list()函数中的参数个数相同*c. 数组中的每个元素值会赋值list()函数中的每个参数,list()将每个参数转为变量
* d. list()只能接收索引数组* e. 按索引的下标的顺序
*
$user=array("id"=>1, "name"=>"zhangsan", "age"=>10, "sex"=>"nan");
while($arr=each($user)){
//echo $arr[0]."==>".$arr[1]."
";
echo $arr["key"]."---->".$arr["value"]."
";
}
*/
$user=array("id"=>1, "name"=>"zhangsan", "age"=>10, "sex"=>"nan");
list($key, $value)=each($user); //Array ( [1] => 1 [0] => id )
echo $key."-->".$value;
*
*
输出:zhangsan
10
nam
*/
结果:128
$user=array(1, "zhasna", 40, "nan", "aaa@bb.com");
for($i=0; $iecho "\$user[{$i}]=".$user[$i]."
";
}
for实例1、
echo "\$user[$i]=".$user[$i]."
";
}//反斜杠,这样$user就不会当做变量输出了
for($i=0; $i<13; $i++){
echo "\$user[$i]=".$user[$i]."
";
}
结果
$user[0]=1
$user[1]=zhasna
$user[2]=
$user[3]=
$user[4]=
$user[0]=1
$user[1]=zhasna
$user[2]=
$user[3]=
$user[4]=
$user[5]=
$user[6]=
$user[7]=
$user[8]=
$user[9]=
$user[10]=40
$user[11]=nan
$user[12]=aaa@bb.com
foreach实例2、
结果
1
zhasna
40
nan
aaa@bb.com