4.15. Reversing an Array
Problem
You want to reverse the order of the elements in an array.
Solution
Use array_reverse( )
:
$array = array('Zero', 'One', 'Two');
$reversed = array_reverse($array);Discussion
The array_reverse( ) function reverses the
elements in an array. However, it’s often possible
to avoid this operation. If you wish to reverse an array
you’ve just sorted, modify the sort to do the
inverse. If you want to reverse a list you’re about
to loop through and
process, just invert the loop. Instead of:
for ($i = 0, $size = count($array); $i < $size; $i++) {
...
}do the following:
for ($i = count($array) - 1; $i >=0 ; $i--) {
...
}However, as always, use a for loop only on a
tightly packed array.
Another alternative would be, if possible, to invert the order
elements are placed into the array. For instance, if
you’re populating an array from a series of rows
returned from a database, you should be able to modify the query to
ORDER DESC. See your database manual for the exact
syntax for your database.
See Also
Documentation on array_reverse( ) at
http://www.php.net/array-reverse.
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access