如何用php实现多维数组排序

avatar
作者
筋斗云
阅读量:0

在 PHP 中,可以使用 array_multisort() 函数对多维数组进行排序。下面是一个示例:

<?php // 初始化一个多维数组 $data = array(     array('volume' => 67, 'edition' => 2),     array('volume' => 86, 'edition' => 1),     array('volume' => 85, 'edition' => 6),     array('volume' => 98, 'edition' => 2),     array('volume' => 86, 'edition' => 6) );  // 初始化需要排序的列 $volume = $edition = array();  // 将需要排序的列分别存储到新数组中 foreach ($data as $key => $row) {     $volume[$key] = $row['volume'];     $edition[$key] = $row['edition']; }  // 对需要排序的列进行排序 array_multisort($volume, SORT_DESC, $edition, SORT_ASC, $data);  // 打印排序后的多维数组 print_r($data); ?> 

这个示例中,我们首先创建了一个包含五个子数组的多维数组 $data。然后,我们使用 foreach 循环将需要排序的列(volumeedition)分别存储到新数组 $volume$edition 中。接下来,我们使用 array_multisort() 函数对这些列进行排序。最后,我们使用 print_r() 函数打印排序后的多维数组。

在这个示例中,我们按照 volume 降序排序,并在 volume 相同时按照 edition 升序排序。你可以根据需要修改 SORT_DESCSORT_ASC 参数来调整排序顺序。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!