一个数组先按值排序,如果它的值有相同,就再按键排序
2016-06-21 16:34
435 查看
<?php //排序 function mulsort($arr) { if(!is_array($arr)) { echo "输入的不是数组"; return false; } if(count($arr) < 1) { echo "数组不能为空"; return false; } //获取所有的键 $keys = array_keys($arr); //获取所有的值 $vals = array_values($arr); //先对值排序,值相同时再对键排序 array_multisort($vals, $keys); //将排序后的键和值重新组合成数组 $arr = array_combine($keys, $vals); return $arr; } $arr = array("d"=>100, "b"=>23, "c"=>22, "f"=>22, "e"=>22); echo "排序前的数组<br>"; print_r($arr); echo "<br>"; $result = mulsort($arr); if($result) { echo "排序后的数组<br>"; print_r($result); } ?>
相关文章推荐
- 对于缓存思想的理解
- javascript——表单校验工具代码
- java多线程(三)-同步工具Semaphore
- yii 2.0 属性
- MySQL数据记录基本操作——多表查询、子查询和正则表达式查询
- Android文件上传
- python: os模块
- display:table-cell几种应用
- Mybatis 传入List类型参数,报错:There is no getter for property named '__frch_item_0' in
- Eclipse快捷键大全
- 异常处理的性能开销
- C++ 安全字符串拼接
- LeetCode Add Digits(计算数位的和)
- 比较List<String>中元素,获取长度最大的元素。
- 正确的重载operator+
- iOS内存管理(1)-- iOS中strong,copy,retain,weak,assign的用法
- asp.net提高程序性能的技巧(一)
- oracle11g 使用数据泵导出导入数据
- Log4J日志配置详解和自定义log4j日志级别及输出日志到不同文件实现方法
- laravel判断model是否为空