在php中,可用array_reverse()或array_flip()函数来实现数组反转。array_reverse()可以实现数组元素反转,会将原数组中的元素顺序翻转,创建新的数组并返回,语法“array_reverse(array,preserve)”。array_flip()可以实现数组键值对的反转,会交换数组中键和值的位置,语法“array_flip(array)”。
本教程操作环境:windows7系统、PHP8版、DELL G3电脑
数组反转,可以分成:
反转数组元素的位置
反转键和值的位置
在php中,可用array_reverse()或array_flip()函数来实现。
方法1:使用array_reverse()来反转数组元素的位置
array_reverse() 函数以相反的元素顺序返回数组;它会将原数组中的元素顺序翻转,创建新的数组并返回。
语法格式:
array_reverse(array,preserve)
参数 | 描述 |
---|---|
array | 必需。规定数组。 |
preserve | 可选。规定是否保留原始数组的键名。如果设置为 TRUE 会保留数字的键。 非数字的键则不受这个设置的影响,总是会被保留。可能的值:truefalse |
示例:
<?php
header("Content-type:text/html;charset=utf-8");
$array= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
var_dump(array_reverse($array));
var_dump(array_reverse($array,true));
?>
参数preserve可省略,用于规定是否保留原始数组的键名(只针对数字键名,非数字的键则不受影响)。
<?php
header('content-type:text/html;charset=utf-8');
$arr =array("a"=>"Volvo","b"=>"BMW","c"=>"Toyota");
echo "原数组顺序:";
var_dump($arr);
echo "<br>数组反转后的顺序:";
var_dump(array_reverse($arr));
var_dump(array_reverse($arr,true));
?>
方法2:使用array_flip()来反转键和值的位置
array_flip()函数可以交换数组中的键和值
<?php
header("Content-type:text/html;charset=utf-8");
$arr1=array("aaa"=>11,"bbb"=>22,"ccc"=>33);
echo "原数组:";
var_dump($arr1);
$arr2=array_flip($arr1);
echo "反转数组键值对的数组:";
var_dump($arr2);
?>