php中的循環遍歷 foreach list each

foreach語句遍歷數組
foreach語句用於循環遍歷數組,每進行一次循環,當前數組元素的值就會被賦值給變量value(也能夠是其它變量),數組指針會逐一的移動。php

代碼示例:
foreach($array as $value){  //$array要遍歷的數組,$value爲指針指向數組當前的值,as起到賦值的做用
  code to executed;
}
foreach語句也能夠得到數組的鍵名,以下:  
代碼示例:
foreach($array as $key => $value){
  echo $key "-" $value. "<br />";
}

echo()函數
each()的做用是將數組當前元素的鍵值對拆成一個新數組,並把下一個元素做爲當前元素。好比Array(...,'Robert'=>'Bob',...)中的'Robert'=>'Bob'鍵值對,拆成Array([1]=>'Bob',[value]=>'Bob',[0]=>'Robert',[key]=>'Robert')數組,拆成兩套(共四個鍵值對)返回,0和1的序號對,key和value的名-值對,使用其中一套就能夠了。html

例:mysql

代碼示例:
<?Php
$prices=Array('Tries' => 100, 'Oil' => 10, 'Spank Plugs' => 4);
while($elements = each($prices)){
  echo $elements['key'];  //echo $elements[0];
  echo " - ";
  echo $elements['value'];   //echo $element[1];
  echo "<br />";
}

輸出結果:
Tires-100
Oil-10
Spank Plugs-4sql

list()函數遍歷數組
list()函數能夠用來將一個數組分解爲一系列的值。list()常與each()一塊兒使用。可是list()也能夠不與each()一塊兒使用,例如:list($key, $value) = explode()(":", $v);
list($key, $value) = each($array);   //$key,$value能夠任意命名變量名
該句是將each返回的數組當前的0,1位置的元素賦值給$key,$value變量。
例子:數組

代碼示例:
<?php
$prices=Array('Tries' => 100, 'Oil' => 10, 'Spank Plugs' => 4);
while(list($product, $prices) = each($prices);){
  echo $product "-" $prices;
  echo "<br />";
}

輸出結果:
Tires-100
Oil-10
Spank Plugs-4函數

另外一種實現方法:fetch

代碼示例:
<?php
$prices=Array('Tries' => 100, 'Oil' => 10, 'Spank Plugs' => 4);
list($product, $price) = $each($prices);
echo "$product - $price";  //輸出第一個數組
$next = $next($prices);   // 指針後移
echo $next;
使用while、each與list函數組合遍歷二維數組的方法
<?php  
$contact=array(  
    'gao'=>array('ID'=>1,'name'=>'高某','company'=>'A公司','addr'=>'北京市','phonenumber'=>'(010)98765432','email'=>'gao@mail.com'),  
        'li'=>array('ID'=>2,'name'=>'李某','company'=>'B公司','addr'=>'上海市','phonenumber'=>'(021)98765432','email'=>'li@mail.com'),  
    'ma'=>array('ID'=>3,'name'=>'馬某','company'=>'C公司','addr'=>'重慶市','phonenumber'=>'(023)98765432','email'=>'ma@mail.com'),  
    'fan'=>array('ID'=>4,'name'=>'範某','company'=>'D公司','addr'=>'天津市','phonenumber'=>'(022)98765432','email'=>'fan@mail.com')  
);  
  
while(list($key,$value)=each($contact)){  
    while(list($name,$info)=each($value)){  
             echo $name.':'.$info.'<br>';  
    }  
    echo "------------------------------------<br>";  
}  
?>  

php中使用while、each與list函數組合遍歷二維數組的效果:spa

list與mysql_fetch_row():.net

mysql_fetch_row():從結果集中取得一行做爲枚舉數組.指針

數據表字段:id,country,animal,cname

 echo '<table cellpadding="10" border="1">';

    echo '<tr><th>字段1</th><th>字段2</th><th>字段3</th><th>字段4</th></tr>';
     while(list($id,$country,$animal,$cname)=mysql_fetch_row($result)){
        echo "<tr>";
        echo "<td>".$id."</td>";
        echo "<td>".$country."</td>";
        echo "<td>".$animal."</td>";
        echo "<td>".$cname."</td>";
        echo "</tr>";
     }
     echo "</table>";
  }

 參考:http://blog.csdn.net/maminyao/article/details/7569079

           http://www.169it.com/blog_article/1443995156.html

相關文章
相關標籤/搜索