array_reverse

(PHP 4, PHP 5, PHP 7, PHP 8)

array_reverseDevuelve un array con los elementos en orden inverso

Descripción

array_reverse(array $array, bool $preserve_keys = false): array

Toma un valor array y devuelve un nuevo array con el orden de los elementos invertido.

Parámetros

array

El array de entrada.

preserve_keys

Si se establece en true las claves numéricas se conservarán. Las claves no numéricas no se ven afectadas por este ajuste y se conservarán siempre.

Valores devueltos

Devuelve el array en orden inverso.

Ejemplos

Ejemplo #1 Ejemplo de array_reverse()

<?php
$input
= array("php", 4.0, array("verde", "rojo"));
$reversed = array_reverse($input);
$preserved = array_reverse($input, true);

print_r($input);
print_r($reversed);
print_r($preserved);
?>

El resultado del ejemplo sería:

Array
(
    [0] => php
    [1] => 4
    [2] => Array
        (
            [0] => verde
            [1] => rojo
        )

)
Array
(
    [0] => Array
        (
            [0] => verde
            [1] => rojo
        )

    [1] => 4
    [2] => php
)
Array
(
    [2] => Array
        (
            [0] => verde
            [1] => rojo
        )

    [1] => 4
    [0] => php
)

Ver también

  • array_flip() - Intercambia todas las claves de un array con sus valores asociados

add a note add a note

User Contributed Notes 3 notes

up
33
alfbennett at gmail dot com
14 years ago
Needed to just reverse keys. Don't flog me if there is a better way. This was a simple solution.

<?php
function array_reverse_keys($ar){
    return
array_reverse(array_reverse($ar,true),false);
}
?>
up
-51
atulmvAThotmailDOTcoDOTuk
12 years ago
Here are a couple of routines to swap the order of two elements in an array

<?php

function array_swap_forward($arr,$elem)
{
$ndx = array_search($elem,$arr) - 1;
$b4 = array_slice($arr,0,$ndx);
$mid = array_reverse(array_slice($arr,$ndx,2));
$after = array_slice($arr,$ndx + 2);

return
array_merge($b4,$mid,$after);
}

function
array_swap_back($arr,$elem)
{
$ndx = array_search($elem,$arr);
$b4 = array_slice($arr,0,$ndx);
$mid = array_reverse(array_slice($arr,$ndx,2));
$after = array_slice($arr,$ndx + 2);

return
array_merge($b4,$mid,$after);
}

$arr =array('a','b','c','d','e','f');
print_r(array_swap_forward($arr,'c'));
echo
'<br>';
print_r(array_swap_back($arr,'c'));
?>
up
-63
rahulavhad at yahoo dot com
23 years ago
This code can help in recursive reversing of the array...

<?php
$arr1
= array(2,1,array(5,2,1,array(9,8,7)),5,0);
$arr1 = array_reverse($arr1);

function
Reverse_Array($array)
{   
$index = 0;
    foreach (
$array as $subarray)
    {    if (
is_array($subarray))
        {   
$subarray = array_reverse($subarray);
           
$arr = Reverse_Array($subarray);
           
$array[$index] = $arr;
        }
        else {
$array[$index] = $subarray;}
       
$index++;
    }
    return
$array;
}

$arr2 = Reverse_Array($arr1);
?>
To Top