如何在php中使用each()时遍历数组的内容,而不进行循环

时间:2012-11-01 11:19:14

标签: php arrays list each

$foo1 = array("bob", "fred", "jussi", "jouni", "egon", "marliese");

$bar1 = each($foo1);
print '<pre>';
print_r($bar1);
print '</pre>';

上面的代码给出了以下输出:

Array
(
    [1] => bob
    [value] => bob
    [0] => 0
    [key] => 0
)

如何打印$ bar1包含的其他数组?像fred的数组(在$ foo1中)?

*我知道可以使用while,list和each来完成 *我也知道foreach使这项任务更容易了

我想知道是否有任何句柄可以抓住并得到类似以下输出的内容:

Array
(
    [1] => fred
    [value] => fred
    [0] => 0
    [key] => 0
)

2 个答案:

答案 0 :(得分:0)

$foo1 = array("bob", "fred", "jussi", "jouni", "egon", "marliese");

next($foo1);
$bar1 = each($foo1);
print '<pre>';
print_r($bar1);
print '</pre>';

通常,只需将数组指针移动到所需位置,然后调用each

输出:

Array
(
    [1] => fred
    [value] => fred
    [0] => 0
    [key] => 0
)

答案 1 :(得分:0)

每次调用each()时,它都会返回有关输入数组的下一个元素的信息。因此,它第一次返回有关“bob”的信息,下次它将返回“fred”,依此类推。如果您想要访问特定元素,则必须继续调用each()next()以将数组的内部指针前进到该点。