ホームページ >php教程 >php手册 >PHP二维数组如何根据某个字段排序

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

WBOY
WBOYオリジナル
2016-06-06 19:52:11937ブラウズ

欢迎进入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二维数组如何根据某个字段排序

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:PHP实现DataGrid次の記事:php中的ignore