У меня есть массив, который я хочу инвертировать, как я делаю это?
Это зависит от того, что вы имеете в виду: инвертировать или обратить?
Если вы хотите инвертировать ключи со значениями, то посмотрите на 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);
?>
Выход:
Array
(
[0] => Item 1
[1] => Item 2
[2] => Item 3
)
Array
(
[Item 1] => 0
[Item 2] => 1
[Item 3] => 2
)
?>
Если вы хотите обратить массив, то используйте 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
)
?>
Вы также можете захотеть перевернуть массив, но при этом присвоить значения ключам, в этом случае вам понадобится $values = array_reverse($values, true);
Используйте array_reverse
:
$array_inverted = array_reverse($array);
Другой вариант, который вы, возможно, также хотите рассмотреть, - это просто читать массив снизу вверх, а не сверху вниз, если ситуация позволяет это.