PHP: ArrayIterator::current - Manual

downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

ArrayIterator::key spl

Last updated: Sat, 27 Jan 2007

view this page in

# ArrayIterator::current

(no version information, might be only in CVS)

ArrayIterator::current -- Return current array entry

## Description

mixed ArrayIterator::current ( void )

This function returns the current array entry

Пример 1. ArrayIterator::current() example

`<?php
$array = array('1' => 'one',
'2' => 'two',
'3' => 'three');
$arrayobject = new ArrayObject($array);
for($iterator = $arrayobject->getIterator();
$iterator->valid();
$iterator->next()) {
echo $iterator->key() . ' => ' . $iterator->current() . "\n";
}
?>`

Результат выполнения данного примера:

    1 => one
    2 => two
    3 => three

add a note User Contributed Notes
ArrayIterator::current
pcdinh at phpvietnam dot net
20-Mar-2006 05:47
`ArrayIterator is only used for interating simple arrays of which the value part is not another array. You can test it with a more complex array like this:
$arr = array (
\\\'Section 1\\\' => array (
\\\'Cat 1\\\' => array (
1 => array (
1 => \\\'So 1\\\',
2=> \\\'So 2\\\'
),
2 => \\\'So 2\\\'
),
\\\'Cat 2\\\' => array (
\\\'Sub-cat 1\\\' => array (
1 => \\\'So 1\\\',
2=> \\\'So 2\\\'
),
\\\'Sub-cat 2\\\' => \\\'So 2\\\'
)
),
\\\'Section 2\\\' => array (
\\\'Cat 1\\\' => array (
),
\\\'Cat 2\\\' => array (
\\\'Sub-cat 1\\\' => array (
1 => \\\'So 1\\\',
2=> \\\'So 2\\\'
),
\\\'Sub-cat 2\\\' => \\\'So 2\\\'
)
)
);
$arrayobject = new ArrayObject($arr);
for($iterator = $arrayobject->getIterator();
$iterator->valid();
$iterator->next()) {
echo $iterator->key() . \\\' => \\\' . $iterator->current() . \\\"<br />\\\";
}
The above scriptlet will return
Section 1 => Array
Section 2 => Array
because it can not recursively iterate throught the array.
Do the following instead (in PHP5.1):
$arrayIterator = new RecursiveArrayIterator($arr);
$iterator = new RecursiveIteratorIterator($arrayIterator);
foreach ($iterator as $val) {
echo $val.\\\'<br/>\\\';
}`
add a note
ArrayIterator::key spl

Last updated: Sat, 27 Jan 2007
show source | credits | stats | sitemap | contact | advertising | mirror sites
Copyright © 2001-2007 The PHP Group
All rights reserved.
This mirror generously provided by: Yahoo! Inc.
Last updated: Sat Mar 10 11:33:19 2007 PST