我有一个数组,我想将其反转,该怎么做?
这实际上取决于您是要倒置还是反转?
如果您想将键与值倒置,则可以查看 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);
输出:
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_flip
与fgetcsv
搭配使用非常好,特别是当列标题可能不按预期顺序排列时。http://www.php.net/manual/en/function.fgetcsv.php - jocull