php数组函数序列之each() - 获取数组当前内部指针所指向元素的键名和键值,并将指针移到下一位

yipeiwu_com7年前PHP代码库
each()定义和用法
each() 函数生成一个由数组当前内部指针所指向的元素的键名和键值组成的数组,并把内部指针向前移动。

返回的数组中包括的四个元素:键名为 0,1,key 和 value。单元 0 和 key 包含有数组单元的键名,1 和 value 包含有数据。

如果内部指针越过了数组范围,本函数将返回 FALSE。

语法
each(array)参数 描述
array 必需。规定要使用的数组。

例子 1
复制代码 代码如下:

<?php
$people = array("Peter", "Joe", "Glenn", "Cleveland");
print_r (each($people));
?>

输出:

Array ( [1] => Peter [value] => Peter [0] => 0 [key] => 0 )例子 2
each() 经常和 list() 结合使用来遍历数组。本例与上例类似,不过循环输出了整个数组:
复制代码 代码如下:

<?php
$people = array("Peter", "Joe", "Glenn", "Cleveland");
reset($people);
while (list($key, $val) = each($people))
{
echo "$key => $val<br />";
}
?>

输出:

0 => Peter
1 => Joe
2 => Glenn
3 => Cleveland例子解释
因为将一个数组赋值给另一个数组时会重置原来的数组指针,因此在上例中如果我们在循环内部将 $people 赋给了另一个变量的话将会导致无限循环。

相关文章

PHP7新功能总结

以下是小编给大家整理的关于PHP7的相关更新内容和知识点。 新功能 PHP 7增加了许多特性,其中最重要的特性如下所述 • 性能改进——在PHP7中合并了PHPNG代码,速度...

晋城吧对DiscuzX进行的前端优化要点

最近,康盛的DX版本基本确定,至少短期内不会大变了,因此,我对晋城吧的整站进行了前端优化,把自己 所做的操作记录下来,一是有个记录,防止忘掉,二是和网上的朋友们共享下自己的心得。 前端...

PHP中iconv函数转码时截断字符问题的解决方法

iconv是转换编码的,但是在中文转码时候出现显示不全问题。  复制代码 代码如下:  iconv("UTF-8","GB2312//IGNORE",$data)...

php实现的Curl封装类Curl.class.php用法实例分析

本文实例讲述了php实现的Curl封装类Curl.class.php用法。分享给大家供大家参考。具体如下: <?php //curl类 class Curl { fu...

php 生成唯一id的几种解决方法

网上查了下,有很多的方法 1、md5(time() . mt_rand(1,1000000));   这种方法有一定的概率会出现重复 2、php内置函数uniqid()   uniqid...