按多个字段值对多维数组进行排序
在 PHP 中,可以使用 array_multisort() 来完成按多个字段值对多维数组进行排序。
考虑以下事项array:
$data = [ [ "destination" => "Sydney", "airlines" => "airline_1", "one_way_fare" => 100, "return_fare" => 300 ], [ "destination" => "Sydney", "airlines" => "airline_2", "one_way_fare" => 150, "return_fare" => 350 ], [ "destination" => "Sydney", "airlines" => "airline_3", "one_way_fare" => 180, "return_fare" => 380 ] ];
要按 return_fare 升序和 one_way_fare 升序对数组进行排序,请使用 array_multisort():
// Extract specific fields into individual arrays $return_fare = array_column($data, 'return_fare'); $one_way_fare = array_column($data, 'one_way_fare'); // Sort arrays using multiple criteria array_multisort($return_fare, SORT_ASC, $one_way_fare, SORT_ASC, $data); // Print sorted array print_r($data);
替代方法:
array_multisort(array_column($data, 'return_fare'), SORT_ASC, array_column($data, 'one_way_fare'), SORT_ASC, $data);
以上是如何按多个字段对多维 PHP 数组进行排序?的详细内容。更多信息请关注PHP中文网其他相关文章!