Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I invert my array?

Tags:

arrays

php

I have an array that i want to invert how do i do this?

like image 443
Lizard Avatar asked Jul 21 '10 16:07

Lizard


1 Answers

This really depends on whether you mean invert or reverse?

If you want to invert your keys with the values then take a look at array_flip http://www.php.net/manual/en/function.array-flip.php

<?php 

$values = array("Item 1","Item 2","Item 3"); 
print_r($values); 

$values = array_flip($values); 
print_r($values); 
?> 

Output:

Array
(
    [0] => Item 1
    [1] => Item 2
    [2] => Item 3
)
Array
(
    [Item 1] => 0
    [Item 2] => 1
    [Item 3] => 2
)
?>

if you want to reverse your array then use array_reverse http://php.net/manual/en/function.array-reverse.php

<?php
$values = array("Item 1","Item 2","Item 3"); 
print_r($values); 

$values = array_reverse($values);
print_r($values);

Output:

Array
(
    [0] => Item 1
    [1] => Item 2
    [2] => Item 3
)
Array
(
    [0] => Item 3
    [1] => Item 2
    [2] => Item 1
)
?>

You may also want to reverse the array but key the values assigned to their keys in that case you will want $values = array_reverse($values, true);

like image 162
Lizard Avatar answered Sep 21 '22 14:09

Lizard