欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

PHP二维数组如何根据某个字段排序

程序员文章站 2024-02-08 15:18:52
...

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 分享下PHP二维数组如何根据某个字段排序的方法。 从两个不同的表中获取各自的4条数据,然后整合(array_merge)成一个数组,再根据数据的创建时间降序排序取前4条。 本文记录的要实现的功能类似于 My

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入

  分享下PHP二维数组如何根据某个字段排序的方法。

  从两个不同的表中获取各自的4条数据,然后整合(array_merge)成一个数组,再根据数据的创建时间降序排序取前4条。

  本文记录的要实现的功能类似于 MySQL 中的 ORDER BY,上个项目中有遇到这样的一个需求。

  要求:从两个不同的表中获取各自的4条数据,然后整合(array_merge)成一个数组,再根据数据的创建时间降序排序取前4条。

  这个要求就不是 ORDER BY 能解决的问题了。因此翻看 PHP手册查找到了如下方法,做此笔记。

  代码:

  

  /**

  * 二维数组根据某个字段排序

  * 功能:按照用户的年龄倒序排序

  * @author ruxing.li

  * @edit

  */

  header('Content-Type:text/html;Charset=utf-8');

  $arrUsers = array(

  array(

  'id' => 1,

  'name' => '张三',

  'age' => 25,

  ),

  array(

  'id' => 2,

  'name' => '李四',

  'age' => 23,

  ),

  array(

  'id' => 3,

  'name' => '王五',

  'age' => 40,

  ),

  array(

  'id' => 4,

  'name' => '赵六',

  'age' => 31,

  ),

  array(

  'id' => 5,

  'name' => '黄七',

  'age' => 20,

  ),

  );

  $sort = array(

  'direction' => 'SORT_DESC', //排序顺序标志 SORT_DESC 降序;SORT_ASC 升序

  'field' => 'age', //排序字段

  );

  $arrSort = array();

  foreach($arrUsers AS $uniqid => $row){

  foreach($row AS $key=>$value){

  $arrSort[$key][$uniqid] = $value;

  }

[1] [2]

PHP二维数组如何根据某个字段排序