You want to reverse the order of the elements in an array.
Use array_reverse():
1 2 |
$array = array('Zero', 'One', 'Two'); $reversed = array_reverse($array); |
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:
1 2 3 |
for ($i = 0, $size = count($array); $i < $size; $i++) { // ... } |
do the following:
1 2 3 |
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 in which 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.