博客列表 >数组的定义、访问及便厉

数组的定义、访问及便厉

XFY_肆意De...
XFY_肆意De...原创
2020年07月21日 12:20:36652浏览
  1. 数组分为二种:
  2. 1、索引数组
  3. 2、关联数组
索引数组:
  1. //定义方法:使用内置涵数:array();定义例如!
  2. $a = array();
  3. //定义变量$a 为一个空数组!
  4. //也可以使用其他的方法,直接弄
  5. $user= ['0'=>'张三','1'=>'18','2'=>'111@qq.com'];
  6. //或者
  7. $user = ['张三',18,'111@qq.com'];
  8. echo $user[0].$user['1'].$user['2'];
  9. //以上就是索引数组;即默认使用数字的
关联数组
  1. $user= ['name'=>'张三','age'=>'18','email'=>'111@qq.com'];
  2. //用自定义的方式来定义关联数组,一般是和数据库结构有关系,以上的name,age,email都是有特别意义的.跟数据库表设计关系有关系!
通过数组指针访问;使用到的关键字;key(),current(),end(),next(),prev();reset();
  1. key() 返回数组中的当前元素的键key
  2. current() 反回数组中的当前元素的值,
  3. end() 反回数组中最后的一个的元素,
  4. next() 将内部指针下移一位,
  5. prev() 将内部指针往上移一位
  6. reset() 把指针移到数组第一个元素.
  1. $user= ['name'=>'张三','age'=>'18','email'=>'111@qq.com'];
  2. echo key($user).":".current($user)."<br/>";
  3. next($user);
  4. echo key($user).":".current($user)."<br/>";
  5. next($user);
  6. echo key($user).":".current($user)."<br/>";
  7. next($user);
  8. //输出:
  9. //name:张三 gae:18 email:111@qq.com
既然数组每次需要的都是要下移一位next()的操作的话,那有没有办法一次完成呢,这里PHP给我们提供了以下几种循环方式

whil() for() foreach()三种循环方式!

while()循环

  1. $user= ['name'=>'张三','age'=>'18','email'=>'111@qq.com'];
  2. //如果while循环为真
  3. while(true){
  4. //输出当前数组的key,并且返回当前指针下的元素
  5. echo key($user).":".current($user)."<br/>";
  6. //为了防止死循环程序崩溃!这里需要添加一个指针下移的操作,如果数组中还有指,那就继续continue;,否则跳出循环!break;
  7. if($next($user)){
  8. continue;
  9. }else{
  10. break;
  11. }
  12. }

for()循环;

  1. $user= ['name'=>'张三','age'=>'18','email'=>'111@qq.com'];
  2. for($i=0;$i<count($user);$i++){
  3. echo $user[$i].'<br/>';
  4. }

通过foreach()循环,关联/索引数组都适用

  1. //基础语法:foreach($array as $key => value)
  2. $user= ['name'=>'张三','age'=>'18','email'=>'111@qq.com'];
  3. foreach($user as $key =>$value){
  4. echo $key."=".$value."<br/>";
  5. }

通过foreach + list() 循环访问多维数组;

  1. $user=[
  2. ['name'=>'张三','age'=>'18','email'=>'111@qq.com'],
  3. ['name'=>'李四','age'=>'20','email'=>'222@qq.com']
  4. ];
  5. //list();涵数的作用!
  6. /*
  7. list($a,$b,$c)=[1,2,3];
  8. 直接将赋值操作按照11对等的关系赋值并且创建相应的变量;
  9. $a,$b,$c;
  10. */
  11. foreach($user as list('name'=>$name,'age'=>$age,'email'=>$email)){
  12. printf('姓名=%s,年龄=%i,邮件=%s',$name,$age,$email);
  13. }
  14. /*
  15. 输出:
  16. 姓名:张三,年龄=18,邮件=111@qq.com
  17. 姓名:李四,年龄=20,邮件=222@qq.com
  18. */

结论:

了解数组的使用,定义,及访问,并且对循环数组有了初步的了解,至于,while , for,foreach ,foreach+list等方法具体操作,具体看情况!

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议