foreach($a as $b = >$c)
$b存储$a当前索引指向的值
= >$c 怎么理解??

解决方案 »

  1.   

     1. 使用for语句循环遍历数组
                a. 其它语言(只有这一种方式)
                b. PHP中这种方式不是我们首选方式
                c. 数组必须是索引数组,而且下标还必须是连续的
                   (索引数组下标还可以不连序,数组还有关联数组)
          
       
         2. 使用foreach语句循环遍历数组
            foreach(数组变量 as 变量值){
         //循环体
            }
            a. 循环次数由数组的元素个数决定
            b. 每一次循环都会将数组中的元素分别赋值给后面变量
       
            foreach(数组变量 as 下标变量=> 值变量){
         
            }
       
         3. while() list() each() 组合循环遍历数组
       
              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 ) 
           
             list()函数
       
          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]."<br>";
        echo $arr["key"]."---->".$arr["value"]."<br>";
       }   使用数组的内部指针控制函数   next(数组);
       prev(数组);
       reset(数组)
       end(数组);   current(数组);
       key(数组);
       
       $user=array("id"=>1, "name"=>"zhangsan", "age"=>10, "sex"=>"nan");   while(list($key, $value)=each($user)){
        echo $key."==>".$value."<br>";
       }
       reset($user);
       while(list($key, $value)=each($user)){
        echo $key."==>".$value."<br>";
       }
       reset($user);
       next($user);
       next($user);
       while(list($key, $value)=each($user)){
        echo $key."==>".$value."<br>";
       }
       reset($user);   echo current($user)."===========>".key($user)."<br>";
       end($user);
       echo current($user)."===========>".key($user)."<br>";
       prev($user);
       echo current($user)."===========>".key($user)."<br>";
    ---------------------------------------------------------------------------------------------
    http://www.jiemengwu.com/ 解梦屋 http://www.phpzy.com/php/ 绿色php资源http://www.shopfw.com网店服务
      

  2.   


    $a = array('id'=>1,'title'=>'标题','content'=>'内容');
    foreach($a as $b => $c){
    //echo $b;
    echo $c;
    }自己输出一下就知道结果了。
    其实正如数组赋值时候的那样,key=>value,$b就是当前遍历的key,$c就是当前的value。
    不知这样够通俗易懂吗?
      

  3.   

    foreach($a as $b = >$c)$b索引       是key  $c才是值   也就是value
      

  4.   

    $a = array('id'=>1,'title'=>'标题','content'=>'内容');
    foreach($a as $b => $c){
    //echo $b;
    echo $c;
    }
      

  5.   


    遍历 $b相当于key
    $c相当于value$b=>$c和如下是一样的
    array('key'=>'value')
      

  6.   


    这是php独有的遍历数组的语法。
    程序执行流程是:
    将数组中的第一个元素的键名,赋给$b,键值赋给$c,然后指针移动到下一个元素。重复上述步骤。
      

  7.   

    我觉得#9楼的大哥讲的很好。因为我当初学习的时候也是这么理解这个foreach遍历数组的问题的。谢谢。
      

  8.   

    print_r();
    打印数组或者对象的。