Traversing Arrays
The most common task with arrays is to do something with every element—for instance, sending mail to each element of an array of addresses, updating each file in an array of filenames, or adding up each element of an array of prices. There are several ways to traverse arrays in PHP, and the one you choose will depend on your data and the task you’re performing.
The foreach Construct
The most common way to loop over elements of an array is to use the
foreach
construct:
$addresses = array('spam@cyberpromo.net', 'abuse@example.com');
foreach ($addresses as $value) {
echo "Processing $value\n";
}
Processing spam@cyberpromo.net
Processing abuse@example.comPHP executes the body of the loop (the echo statement) once for each
element of $addresses in turn, with $value set to the current
element. Elements are processed by their internal order.
An alternative form of foreach gives you access to the current key:
$person = array('name' => 'Fred', 'age' => 35, 'wife' => 'Wilma');
foreach ($person as $k => $v) {
echo "Fred's $k is $v\n";
}
Fred's name is Fred
Fred's age is 35
Fred's wife is WilmaIn this case, the key for each element is placed in $k and the
corresponding value is placed in $v.
The foreach construct does not operate on the array itself, but
rather on a copy of it. You can insert or delete elements in the body
of a foreach loop, safe in the knowledge that the loop
won’t attempt to process the deleted or inserted
elements.
The Iterator Functions
Every PHP ...