给定此数组:
$inventory = array(
array("type"=>"fruit", "price"=>3.50),
array("type"=>"milk", "price"=>2.90),
array("type"=>"pork", "price"=>5.43),
);
我想$inventory
按价格对元素进行排序以获得:
$inventory = array(
array("type"=>"pork", "price"=>5.43),
array("type"=>"fruit", "price"=>3.50),
array("type"=>"milk", "price"=>2.90),
);
我怎样才能做到这一点?
没错,您要寻找的功能是array_multisort()
。
以下是直接取自手册并适合您的情况的示例:
$price = array();
foreach ($inventory as $key => $row)
{
$price[$key] = $row['price'];
}
array_multisort($price, SORT_DESC, $inventory);
从PHP 5.5.0开始,您可以使用array_column()代替foreach
$price = array_column($inventory, 'price');
array_multisort($price, SORT_DESC, $inventory);
问题内容: 我有这种格式的数组: 如何按该字段的降序对该格式的数组排序?是否有内置功能? 问题答案: 使用并提供您自己的功能进行订购,例如
问题内容: 我有一个数组: 我尝试使用PHP进行各种功能来实现此数组结构: 它由数组值和键/值保持的顺序。有任何想法吗? 问题答案: 这应该使用asort()起作用: 输出:
问题内容: 我有一个由数组组成的数组。我想通过子数组的属性对父数组进行排序。这是一个例子 我想通过在子数组中升序对父数组进行排序,因此在这种情况下,结果将是子数组颠倒(,)。使用众多的PHP排序函数中的任何一种,是否可能? 问题答案: 您可以将usort函数用作:
问题内容: 我有关联数组: 什么是按其值排序(降序)的最优雅方法,其中结果将是一个具有相应索引的数组: ? 问题答案: Javascript没有您所想到的“关联数组”。取而代之的是,您仅具有使用类似于数组的语法设置对象属性的能力(如您的示例),并且具有遍历对象属性的能力。 这样做的结果是无法保证对属性进行迭代的 顺序 ,因此没有什么比对它们更好的了。相反,您需要将对象属性转换为“ true”数组(
问题内容: 我需要通过PHP脚本中的“得分”值对此类信息进行排序,该怎么办?: PS:这已经在PHP值中,我已经使用了json_decode。* 问题答案: 当这个样子的: 您可以用来对数组进行排序: 输出:
本文向大家介绍按PHP中的子值对php多维数组进行排序,包括了按PHP中的子值对php多维数组进行排序的使用技巧和注意事项,需要的朋友参考一下 'usort'函数可用于对PHP中的多维数组进行排序。它根据用户定义的条件对数组进行排序- 示例 输出结果 这将产生以下输出- 声明一个包含4个元素的数组,并将此数组传递给usort函数,并在元素上调用用户定义的“ my_sort”函数以确保排序以升序进行