欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php遍历数组 foreach each() list()方法总结

程序员文章站 2022-06-09 09:42:54
...
  1. foreach($array as $value){ //$array要遍历的数组,$value为指针指向数组当前的值,as起到赋值的作用
  2.   code to executed;
  3. }
复制代码

foreach语句也可以获得数组的键名,如下:

  1. foreach($array as $key => $value){
  2.   echo $key "-" $value. "
    ";
  3. }
复制代码

二,echo()函数 each()的作用是将数组当前元素的键值对拆成一个新数组,并把下一个元素作为当前元素。比如Array(...,'Robert'=>'Bob',...)中的'Robert'=>'Bob'键值对,拆成Array([1]=>'Bob',[value]=>'Bob',[0]=>'Robert',[key]=>'Robert')数组,拆成两套(共四个键值对)返回,0和1的序号对,key和value的名-值对,使用其中一套就可以了。

例:

  1. $prices=Array('Tries' => 100, 'Oil' => 10, 'Spank Plugs' => 4);
  2. while($elements = each($prices)){
  3.   echo $elements['key']; //echo $elements[0];
  4.   echo " - ";
  5.   echo $elements['value']; //echo $element[1];
  6.   echo "
    ";
  7. }
复制代码

输出结果: Tires-100 Oil-10 Spank Plugs-4

三,list()函数遍历数组 list()函数可以用来将一个数组分解为一系列的值。list()常与each()一起使用。但是list()也可以不与each()一起使用,例如:list($key, $value) = explode(":", $v); list($key, $value) = each($array); //$key,$value可以任意命名变量名 该句是将each返回的数组当前的0,1位置的元素赋值给$key,$value变量。 例子:

  1. $prices=Array('Tries' => 100, 'Oil' => 10, 'Spank Plugs' => 4);
  2. while(list($product, $prices) = each($prices);){
  3.   echo $product "-" $prices;
  4.   echo "
    ";
  5. }
复制代码

输出结果: Tires-100 Oil-10 Spank Plugs-4

另一种实现方法:

  1. $prices=Array('Tries' => 100, 'Oil' => 10, 'Spank Plugs' => 4);
  2. list($product, $price) = $each($prices);
  3. echo "$product - $price"; //输出第一个数组
  4. $next = $next($prices); // 指针后移
  5. echo $next;
复制代码