Home > php教程 > php手册 > php遍历数组的4种方法总结

php遍历数组的4种方法总结

WBOY
Release: 2016-06-13 09:32:20
Original
1067 people have browsed it

在php中可以用来遍历数组的函数有很多,如有:for语句、list、each、foreach这四个函数,这也是在php中遍历数组的几个主要的函数,下面我来给大家介绍。

foreach遍历数组

我们在运用数组时,常常要遍历数组并获得各个键或者元素值,php提供了一些专门遍历数组的函数。这里先介绍foreach遍历数组函数的用法。

结构形式:

复制代码 代码如下:


foreach ( array_expression as $value ) statement
/* array_expression是要遍历的数组
   as作用是将数组的值赋给$value
   statement是后续语句
*/

实例1:

复制代码 代码如下:


 '白色' ,
  'black' => '黑色' ,
  'red' => '红色' ,
  'green' => '绿色',
  'yellow' => '黄色');
 foreach( $color as $c) echo $c ."
";   
?>

通过foreach不仅可以获得元素的值也可以获得键名,结构形式:

复制代码 代码如下:

foreach ( array_expression as $key => $value ) statement


将以上实例中第7行的代码:

复制代码 代码如下:

foreach( $color as $c) echo $c ."
";


改为:

复制代码 代码如下:

foreach( $color as $key => $c) echo $key.$c ."
";

each遍历数组

遍历数组是php数组操作一个重要的环节,除了前面提到的foreach函数,这里再介绍一个遍历数组的函数-each()。

用each()函数可以输出当前指针位置的键名和对应的元素值。可以使用”0″或”key”来访问键名(标识符),用”1″或”value”访问标识符对应的值。

实例:

复制代码 代码如下:


 $languages=array(1=-->"php",
  5=>"html",
  10=>"css");
 $a=each($languages); /* 第一次遍历数组 */ 
 echo $a[0] ."t";
 echo $a[1] ."
";
 $a=each($languages); /* 第二次遍历数组 */
 echo $a[key] ."t";
 echo $a[value];   
?>

list遍历数组

函数list可以在遍历数组时一次赋给变量,通常和each()函数配合使用。用list()函数使访问each()返回的键和值变得更加简单了。

实例:

复制代码 代码如下:


 $date=array(1=-->"Monday",
  2=>"Tuesday",
  3=>"Wednesday");
 list($key,$value)=each($date); /* 遍历函数 */
 echo "$key $value" ."
"; /* 输出第一个数组 */
 $next=next($date);  /* 指针后移 */
 echo "$next"; 
?>

ps:list()函数刚好与array()函数相反,array()将一系列数据构造成数组,而list()则将数组拆分成数据。

for遍历数组

除了php预定义的一些遍历数组函数,我们还可以利用for语句的循环特性将数组遍历输出。下面给出例子:

复制代码 代码如下:


 $a[]="张学友"; /* 定义数组 */
 $a[]="刘德华";
 $a[]="黎明";
 $a[]="郭富城";
 $s=count($a); /* 统计数组个数 */
 for($i=0;$i   echo $a[$i] ."
"; /* 显示数组 */
 }
?>

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template