如何在PHP中按给定键的值对关联数组进行排序?

马特

给定此数组:

$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),

);

我怎样才能做到这一点?

乔什·戴维斯(Josh Davis)

没错,您要寻找的功能是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);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何通过给定键的值对关联数组进行排序并在php中维护键?

按PHP中的值对多维关联数组进行排序

如何在php Laravel中对关联数组进行排序

如何按深度值对javascript关联数组进行排序

如何按特定属性对 PHP 中的关联数组集合进行排序

如何通过Javascript中的值对关联数组进行排序?

按特定键的值对多维关联数组的值进行升序排序

PHP:如何通过键更新关联数组中的值

如何在 PHP 中对相似键上的关联数组元素进行分组

如何在php中的关联数组中更新键的值

PHP按特定键排序关联数组

如何在PHP中从关联数组的键中提取所有最后的值?

按值对多维关联数组进行排序(SWIFT)

按子值对多维AND完全关联数组进行排序

按关联数组上的重复值对关联数组进行排序

如何按值对关联数组排序并保留值?

如何在PHP中按值对多维数组进行排序

如何在PHP中更改关联数组值

如何按降序对关联数组进行排序?

按数字索引对javascript中的关联数组进行排序

如何在Java 8中使用常规数组中的键/值创建关联数组?

使用usort在PHP中对关联数组进行排序

在PHP中对复杂的关联数组进行排序

如何按“姓氏,名字”的键/值对 PHP 数组进行排序?

如何根据关联数组中的值重新排序关联数组的索引数组?

如何从PHP的关联数组中获取最大键/值对数组?

PHP - 从关联数组中获取特定键的值?

如何对关联数组进行递归排序

在D中对关联数组进行排序