我们可以使用 PHP 的 array_combine() 和 array_intersect_key() 函数来实现此功能。
具体做法是,首先使用 array_combine() 函数将原始数组中的键和值互换,然后使用 array_intersect_key() 函数根据给定的键重新排序数组。最后,再使用 array_combine() 函数将键和值重新交换回来,以保留数组的原始结构。
示例代码如下:
$keys = array('key1', 'key2', 'key3'); $values = array('value1', 'value2', 'value3'); $originalArray = array_combine($keys, $values); $newArray = array_intersect_key($originalArray, array_flip($keys)); $resultArray = array_combine($keys, $newArray);
这段代码首先创建了一个包含键和值的原始数组,然后使用 array_combine() 函数将键和值互换。接着,使用 array_flip() 函数将给定的键转换为值,并与原始数组进行交集运算以重新排列数组。最后,再次使用 array_combine() 函数将键和值交换回来,得到最终的结果数组。
请注意,此方法假定给定的键在原始数组中均存在。如果存在任何给定键中不存在的键,则会在最终的结果数组中丢失这些值。
上一篇:按给定的分隔符拆分字符串