批改状态:合格
老师批语:数组遍历有多种方式, 掌握一种即可
数组分为二种:1、索引数组2、关联数组
//定义方法:使用内置涵数:array();定义例如!$a = array();//定义变量$a 为一个空数组!//也可以使用其他的方法,直接弄$user= ['0'=>'张三','1'=>'18','2'=>'111@qq.com'];//或者$user = ['张三',18,'111@qq.com'];echo $user[0].$user['1'].$user['2'];//以上就是索引数组;即默认使用数字的
$user= ['name'=>'张三','age'=>'18','email'=>'111@qq.com'];//用自定义的方式来定义关联数组,一般是和数据库结构有关系,以上的name,age,email都是有特别意义的.跟数据库表设计关系有关系!
key(),current(),end(),next(),prev();reset();
key() 返回数组中的当前元素的键keycurrent() 反回数组中的当前元素的值,end() 反回数组中最后的一个的元素,next() 将内部指针下移一位,prev() 将内部指针往上移一位reset() 把指针移到数组第一个元素.
$user= ['name'=>'张三','age'=>'18','email'=>'111@qq.com'];echo key($user).":".current($user)."<br/>";next($user);echo key($user).":".current($user)."<br/>";next($user);echo key($user).":".current($user)."<br/>";next($user);//输出://name:张三 gae:18 email:111@qq.com
whil() for() foreach()三种循环方式!
while()循环
$user= ['name'=>'张三','age'=>'18','email'=>'111@qq.com'];//如果while循环为真while(true){//输出当前数组的key,并且返回当前指针下的元素echo key($user).":".current($user)."<br/>";//为了防止死循环程序崩溃!这里需要添加一个指针下移的操作,如果数组中还有指,那就继续continue;,否则跳出循环!break;if($next($user)){continue;}else{break;}}
for()循环;
$user= ['name'=>'张三','age'=>'18','email'=>'111@qq.com'];for($i=0;$i<count($user);$i++){echo $user[$i].'<br/>';}
foreach()循环,关联/索引数组都适用
//基础语法:foreach($array as $key => value)$user= ['name'=>'张三','age'=>'18','email'=>'111@qq.com'];foreach($user as $key =>$value){echo $key."=".$value."<br/>";}
foreach + list() 循环访问多维数组;
$user=[['name'=>'张三','age'=>'18','email'=>'111@qq.com'],['name'=>'李四','age'=>'20','email'=>'222@qq.com']];//list();涵数的作用!/*list($a,$b,$c)=[1,2,3];直接将赋值操作按照11对等的关系赋值并且创建相应的变量;$a,$b,$c;*/foreach($user as list('name'=>$name,'age'=>$age,'email'=>$email)){printf('姓名=%s,年龄=%i,邮件=%s',$name,$age,$email);}/*输出:姓名:张三,年龄=18,邮件=111@qq.com姓名:李四,年龄=20,邮件=222@qq.com*/
了解数组的使用,定义,及访问,并且对循环数组有了初步的了解,至于,while , for,foreach ,foreach+list等方法具体操作,具体看情况!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号