在 php 中,使用自有函数对数组按值排序并保留键名的方法是:获取数组的所有值并按其排序。获取排序后的值的键。将排序后的值与原数组的键重新组合。
在 PHP 中使用自有函数对数组按值进行排序,保留键名
前言
在 PHP 中,sort()
函数可以对数组按值进行排序。但是,该函数会破坏键名。为了保留键名,我们需要使用自有函数。
自有函数
以下自有函数可以按值对数组排序,同时保留键名:
function sortByValue(array $array)
{
$sortedValues = array_column($array, null);
asort($sortedValues);
$sortedKeys = array_keys($sortedValues);
return array_combine($sortedKeys, $array);
}
实战案例
以下示例演示了如何对包含键名的数组进行排序:
$array = [
'apple' => 10,
'banana' => 20,
'orange' => 5
];
$sortedArray = sortByValue($array);
print_r($sortedArray);
输出结果为:
Array
(
[orange] => 5
[apple] => 10
[banana] => 20
)
正如你看到的,数组按值升序排序,同时保留了键名。
以上就是在 PHP 中使用自有函数对数组按值进行排序,保留键名的详细内容,更多请关注编程网其它相关文章!