PHP二维数组排序简单实现方法


Posted in PHP onFebruary 14, 2016

本文实例讲述了PHP二维数组排序简单实现方法。分享给大家供大家参考,具体如下:

function multi_compare($a, $b)
{
  $val_arr = array(
      'gold'=>'asc',
      'silver'=>'desc'//还可以增加额外的排序条件
  );
  foreach($val_arr as $key => $val){
    if($a[$key] == $b[$key]){
      continue;
    }
    return (($val == 'desc')?-1:1) * (($a[$key] < $b[$key]) ? -1 : 1);
  }
  return 0;
}
$arr = array(
  array('gold'=>1, 'silver'=>2),
  array('gold'=>8, 'silver'=>10),
  array('gold'=>8, 'silver'=>8),
  array('gold'=>2, 'silver'=>1),
);
uasort($arr, 'multi_compare');
print_r($arr);

运行结果如下:

Array
(
  [0] => Array
    (
      [gold] => 1
      [silver] => 2
    )
  [3] => Array
    (
      [gold] => 2
      [silver] => 1
    )
  [1] => Array
    (
      [gold] => 8
      [silver] => 10
    )
  [2] => Array
    (
      [gold] => 8
      [silver] => 8
    )
)

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
模拟OICQ的实现思路和核心程序(一)
Oct 09 PHP
我的论坛源代码(十)
Oct 09 PHP
优化使用mysql存储session的php代码
Jan 10 PHP
php实现mysql同步的实现方法
Oct 21 PHP
如何在PHP中使用正则表达式进行查找替换
Jun 13 PHP
为PHP安装imagick时出现Cannot locate header file MagickWand.h错误的解决方法
Nov 03 PHP
php+mysqli实现批量执行插入、更新及删除数据的方法
Jan 29 PHP
PHP写的简单数字验证码实例
May 23 PHP
PHP基于自定义函数实现的汉字转拼音功能实例
Sep 30 PHP
PHP命令空间namespace及use的用法小结
Nov 27 PHP
PHP实现的折半查找算法示例
Dec 19 PHP
PHP实现微信申请退款功能
Oct 01 PHP
php的闭包(Closure)匿名函数初探
Feb 14 #PHP
PHP5.3新特性小结
Feb 14 #PHP
PHP解压tar.gz格式文件的方法
Feb 14 #PHP
最新版本PHP 7 vs HHVM 多角度比较
Feb 14 #PHP
PHP使用socket发送HTTP请求的方法
Feb 14 #PHP
PHP闭包函数详解
Feb 13 #PHP
php设计模式之委托模式
Feb 13 #PHP
You might like
《雄兵连》系列首部大电影《烈阳天道》:可能是因为期望值太高了
2020/08/18 国漫
php设计模式 State (状态模式)
2011/06/26 PHP
PHP常用开发函数解析之数组篇[未完结]
2012/07/30 PHP
jQuery Mobile + PHP实现文件上传
2014/12/12 PHP
PHP中ajax无刷新上传图片与图片下载功能
2017/02/21 PHP
解决laravel 表单提交-POST 异常的问题
2019/10/15 PHP
通过JS 获取Mouse Position(鼠标坐标)的代码
2009/09/21 Javascript
Jquery中Ajax 缓存带来的影响的解决方法
2011/05/19 Javascript
jquery $(&quot;#variable&quot;) 循环改变variable的值示例
2014/02/23 Javascript
Jquery中offset()和position()的区别分析
2015/02/05 Javascript
JavaScript中实现map功能代码分享
2015/06/11 Javascript
jQuery结合AJAX之在页面滚动时从服务器加载数据
2015/06/30 Javascript
AngularJS入门教程之ng-class 指令用法
2016/08/01 Javascript
Angular2学习笔记——详解NgModule模块
2016/12/02 Javascript
实例浅析js的this
2016/12/11 Javascript
关于JS与jQuery中的文档加载问题
2017/08/22 jQuery
微信小程序获取手机号授权用户登录功能
2017/11/09 Javascript
vue组件实现进度条效果
2018/06/06 Javascript
使用Angular自定义字段校验指令的方法示例
2019/02/01 Javascript
深入理解webpack process.env.NODE_ENV配置
2020/02/23 Javascript
Centos5.x下升级python到python2.7版本教程
2015/02/14 Python
python 动态加载的实现方法
2017/12/22 Python
Python实现k-means算法
2018/02/23 Python
numpy中实现ndarray数组返回符合特定条件的索引方法
2018/04/17 Python
解决Pycharm后台indexing导致不能run的问题
2019/06/27 Python
将labelme格式数据转化为标准的coco数据集格式方式
2020/02/17 Python
删除pycharm鼠标右键快捷键打开项目的操作
2021/01/16 Python
如何在Canvas中添加事件的方法示例
2019/05/21 HTML / CSS
有750多个顶级品牌的瑞士时尚在线:ABOUT YOU
2017/01/04 全球购物
宠物店的创业计划书范文
2014/01/11 职场文书
《三个小伙伴》教学反思
2014/04/11 职场文书
关于对大人不礼貌的检讨书
2014/09/29 职场文书
2015年教师党员自我评价材料
2015/03/04 职场文书
辩论赛新闻稿
2015/07/17 职场文书
德能勤绩工作总结
2015/08/11 职场文书
小公司融资,商业计划书的8切记
2019/07/15 职场文书