php中的array_flip()函数可互换数组键值,将原始数组的键作为新值,值作为新键。该函数适用于下标为整数或字符串的关联数组,不适用于多维数组。重复值会被覆盖,顺序会被保留。
PHP 数组键值互换函数
问题:如何在 PHP 中互换数组中的键和值?
回答:
PHP 提供了 array_flip() 函数,它用于互换数组中的键和值。该函数接收一个数组作为输入,返回一个新数组,其中原始数组的键成为新的值,值成为新的键。
立即学习“PHP免费学习笔记(深入)”;
用法:
$array = ['name' => 'John', 'age' => 30, 'city' => 'London'];
$flippedArray = array_flip($array);
print_r($flippedArray);
输出:
[
'John' => 'name',
'30' => 'age',
'London' => 'city'
]
详细说明:
- array_flip() 函数只适用于下标为整数或字符串的关联数组。它不适用于多维数组。
- 如果原始数组中存在重复的值,在转换后的数组中,重复的值将被覆盖。
- 转换后的数组将保留原始数组中键和值的顺序。
- 如果原始数组为空,array_flip() 函数将返回一个空数组。
示例:
// 将键值互换的示例 1
$colors = ['red', 'green', 'blue'];
$flippedColors = array_flip($colors);
// 将键值互换的示例 2
$data = [
'first_name' => 'Alice',
'last_name' => 'Smith',
'age' => 25,
];
$flippedData = array_flip($data);
输出:
Array
(
[0] => red
[1] => green
[2] => blue
)
Array
(
[Alice] => first_name
[Smith] => last_name
[25] => age
)