首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

each

(PHP 4, PHP 5, PHP 7)

each - 从数组中返回当前的键和值对并推进数组光标

警告

此功能已被弃用的PHP 7.2.0的。依靠这个功能是非常不鼓励的。

描述

代码语言:javascript
复制
array each ( array &$array )

从数组中返回当前的键和值对并推进数组光标。

在执行each()后,数组游标将保留在数组的下一个元素上,或者如果它碰到数组的末尾,则会超过最后一个元素。如果要使用每个数组遍历数组,则必须使用reset()。

参数

array

输入数组。

返回值

返回数组中当前的键和值对array。这对被返回一个四元件阵列中,与键01,和。元素0包含数组元素的键名,1包含数据。

如果数组的内部指针指向数组内容的末尾,则each()会返回FALSE

例子

示例#1each()示例

代码语言:javascript
复制
<?php
$foo?=?array("bob",?"fred",?"jussi",?"jouni",?"egon",?"marliese");
$bar?=?each($foo);
print_r($bar);
?>

$bar现在包含以下键/值对:

代码语言:javascript
复制
Array
(
    [1] => bob
    [value] => bob
    [0] => 0
    [key] => 0
)
代码语言:javascript
复制
<?php
$foo?=?array("Robert"?=>?"Bob",?"Seppo"?=>?"Sepi");
$bar?=?each($foo);
print_r($bar);
?>

$bar现在包含以下键/值对:

代码语言:javascript
复制
Array
(
    [1] => Bob
    [value] => Bob
    [0] => Robert
    [key] => Robert
)

each()通常与list()一起用于遍历数组,下面是一个示例:

示例#2使用each()遍历数组

代码语言:javascript
复制
<?php
$fruit?=?array('a'?=>?'apple',?'b'?=>?'banana',?'c'?=>?'cranberry');

reset($fruit);
while?(list($key,?$val)?=?each($fruit))?{
????echo?"$key?=>?$val\n";
}
?>

上面的例子将输出:

代码语言:javascript
复制
a => apple
b => banana
c => cranberry

警告

因为将数组赋值给另一个变量会重置原始数组的指针,所以我们上面的示例会导致无限循环,因为我们将$ fruit分配给循环内的另一个变量。

警告

each()也会接受对象,但可能会返回意外的结果。因此不建议使用each()来遍历对象属性。

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com