php 多维数组 array sort 排序 :array_multisort
1.参考链接:
参考二: 这个链接很好,可以直接看这个:PHP array_multisort—对多个数组或多维数组进行排序
2.案例一:
//13: 最佳:
public function zjService()
{
//小组得分:
$team = array();
//学生得分:
$student = array(); //取出所有的小组:
$TeamModel = new TeamModel();
$where["where"] = " 1 =1 order by orderBy asc, id asc ";
$data = $TeamModel->getDataList($where); foreach ($data["rows"] as $k => $model)
{
$team[] = $this->teamScoreService($model->id);
} $teamSort = array();
foreach ($team as $k => $v)
{
$teamSort[] = $v["total"];
} //取出所有的学生:
$StudentModel = new StudentModel();
$where["where"] = " 1 =1 order by orderBy asc, id asc ";
$data = $StudentModel->getDataList($where); foreach ($data["rows"] as $k => $model)
{
$student[] = $this->studentScoreService($model->id);
} $studentSort = array();
foreach ($student as $k => $v)
{
$studentSort[] = $v["total"];
} //排序之前:
echo "<pre>";
echo "排序之前:";
var_dump($team);
var_dump($teamSort);
var_dump($student);
var_dump($studentSort); //排序:
array_multisort($teamSort,SORT_DESC,SORT_NUMERIC,$team);
array_multisort($studentSort,SORT_DESC,SORT_NUMERIC,$student); echo "排序之后:";
var_dump($team);
var_dump($student); $parameter = array();
$this->display("Home/iframe/zj.php", $parameter);
}
注意:排序数组
$teamSort[] = $v["total"];
对于是关联的数组,也可以是用
$teamsort[$k] = $v["total"] 参见:参考二:

排序之前: $team, $teamSort , $student , $studentSort
排序之前:array(4) {
[0]=>
array(6) {
["kq"]=>
int(20)
["rw"]=>
float(20)
["zz"]=>
int(40)
["ls"]=>
int(18)
["total"]=>
float(98)
["name"]=>
string(4) "1组"
}
[1]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(10)
["ls"]=>
int(18)
["total"]=>
int(28)
["name"]=>
string(4) "2组"
}
[2]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(15)
["ls"]=>
int(18)
["total"]=>
int(33)
["name"]=>
string(4) "3组"
}
[3]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(20)
["ls"]=>
int(18)
["total"]=>
int(38)
["name"]=>
string(4) "4组"
}
}
array(4) {
[0]=>
float(98)
[1]=>
int(28)
[2]=>
int(33)
[3]=>
int(38)
}
array(12) {
[0]=>
array(6) {
["kq"]=>
int(20)
["rw"]=>
float(20)
["zz"]=>
int(10)
["ls"]=>
int(6)
["total"]=>
float(56)
["name"]=>
string(6) "杨曼"
}
[1]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(0)
["ls"]=>
int(6)
["total"]=>
int(6)
["name"]=>
string(9) "朱延月"
}
[2]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(0)
["ls"]=>
int(6)
["total"]=>
int(6)
["name"]=>
string(9) "牛清倩"
}
[3]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(0)
["ls"]=>
int(6)
["total"]=>
int(6)
["name"]=>
string(9) "施友康"
}
[4]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(10)
["ls"]=>
int(6)
["total"]=>
int(16)
["name"]=>
string(9) "范俊召"
}
[5]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(0)
["ls"]=>
int(6)
["total"]=>
int(6)
["name"]=>
string(9) "陈开娜"
}
[6]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(15)
["ls"]=>
int(6)
["total"]=>
int(21)
["name"]=>
string(9) "杨梦佳"
}
[7]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(10)
["ls"]=>
int(6)
["total"]=>
int(16)
["name"]=>
string(6) "丁宁"
}
[8]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(20)
["ls"]=>
int(6)
["total"]=>
int(26)
["name"]=>
string(6) "脱瑞"
}
[9]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(0)
["ls"]=>
int(6)
["total"]=>
int(6)
["name"]=>
string(6) "沈昕"
}
[10]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(0)
["ls"]=>
int(6)
["total"]=>
int(6)
["name"]=>
string(9) "沈春香"
}
[11]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(20)
["ls"]=>
int(6)
["total"]=>
int(26)
["name"]=>
string(9) "黄佳兴"
}
}
array(12) {
[0]=>
float(56)
[1]=>
int(6)
[2]=>
int(6)
[3]=>
int(6)
[4]=>
int(16)
[5]=>
int(6)
[6]=>
int(21)
[7]=>
int(16)
[8]=>
int(26)
[9]=>
int(6)
[10]=>
int(6)
[11]=>
int(26)
}
排序之后: $team, $student
排序之后:array(4) {
[0]=>
array(6) {
["kq"]=>
int(20)
["rw"]=>
float(20)
["zz"]=>
int(40)
["ls"]=>
int(18)
["total"]=>
float(98)
["name"]=>
string(4) "1组"
}
[1]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(20)
["ls"]=>
int(18)
["total"]=>
int(38)
["name"]=>
string(4) "4组"
}
[2]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(15)
["ls"]=>
int(18)
["total"]=>
int(33)
["name"]=>
string(4) "3组"
}
[3]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(10)
["ls"]=>
int(18)
["total"]=>
int(28)
["name"]=>
string(4) "2组"
}
}
array(12) {
[0]=>
array(6) {
["kq"]=>
int(20)
["rw"]=>
float(20)
["zz"]=>
int(10)
["ls"]=>
int(6)
["total"]=>
float(56)
["name"]=>
string(6) "杨曼"
}
[1]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(20)
["ls"]=>
int(6)
["total"]=>
int(26)
["name"]=>
string(6) "脱瑞"
}
[2]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(20)
["ls"]=>
int(6)
["total"]=>
int(26)
["name"]=>
string(9) "黄佳兴"
}
[3]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(15)
["ls"]=>
int(6)
["total"]=>
int(21)
["name"]=>
string(9) "杨梦佳"
}
[4]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(10)
["ls"]=>
int(6)
["total"]=>
int(16)
["name"]=>
string(6) "丁宁"
}
[5]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(10)
["ls"]=>
int(6)
["total"]=>
int(16)
["name"]=>
string(9) "范俊召"
}
[6]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(0)
["ls"]=>
int(6)
["total"]=>
int(6)
["name"]=>
string(9) "施友康"
}
[7]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(0)
["ls"]=>
int(6)
["total"]=>
int(6)
["name"]=>
string(9) "朱延月"
}
[8]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(0)
["ls"]=>
int(6)
["total"]=>
int(6)
["name"]=>
string(6) "沈昕"
}
[9]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(0)
["ls"]=>
int(6)
["total"]=>
int(6)
["name"]=>
string(9) "沈春香"
}
[10]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(0)
["ls"]=>
int(6)
["total"]=>
int(6)
["name"]=>
string(9) "牛清倩"
}
[11]=>
array(6) {
["kq"]=>
int(0)
["rw"]=>
int(0)
["zz"]=>
int(0)
["ls"]=>
int(6)
["total"]=>
int(6)
["name"]=>
string(9) "陈开娜"
}
}
php 多维数组 array sort 排序 :array_multisort的更多相关文章
- 数组Array.sort()排序的方法
数组sort排序 sort比较次数,sort用法,sort常用 描述 方法sort()将在原数组上对数组元素进行排序,即排序时不创建新的数组副本.如果调用方法sort()时没有使用参数,将按字母顺序( ...
- JavaScript中数组Array.sort()排序方法详解
JavaScript中数组的sort()方法主要用于对数组的元素进行排序.其中,sort()方法有一个可选参数.但是,此参数必须是函数. 数组在调用sort()方法时,如果没有传参将按字母顺序(字符编 ...
- PHP 多维数组 根据字段排序
这个太常用了,记录下.方便后面用 /** * @param $arr [要排序的数组] * @param $condition [要排序的条件, for array('id'=>SORT_DES ...
- js数组之sort排序的用法
sort排序 转载自:https://blog.csdn.net/idomyway/article/details/80544509 js中用方法sort()为数组排序.sort()方法有一个可选参数 ...
- 数组的sort()排序
1.sort() 方法用于对数组的元素进行排序,并返回数组.默认排序顺序是根据字符串Unicode码点,也就是你不传参进去的话,默认按字符串Unicode码点来排序,而不是按数字大小来排序 2.arr ...
- js数组的sort排序详解
<body> <div> sort()对数组排序,不开辟新的内存,对原有数组元素进行调换 </div> <div id="showBox" ...
- js数组的sort排序的原理和应用
1.js sort()方法的应用: 首先:如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序.要实现这一点,首先应把数组的元素都转换成字符串( ...
- js数组中sort排序注意的地方
var a=[1,2,3,4,5] function sum(a,b) { return a-b } //从小到大 function obj(a,b) { return b-a } //从大到小 a. ...
- Chrome谷歌浏览器中js代码Array.sort排序的bug乱序解决办法
[现象] 代码如下: var list = [{ n: "a", v: 1 }, { n: "b", v: 1 }, { n: "c", v ...
随机推荐
- Hadoop OutputCommitter
1. OutputCommitters MapReduce使用一个提交协议来确保作业(job)和任务(task)都完全成功或失败.这个通过 OutputCommiter来实现. 新版本 MapRedu ...
- UML作业第二次:类在类图中的表示
一.学习小结: 类之间的关系通过下面的符号定义 : 使用.. 来代替 -- 可以得到点 线. @startuml Class01 <|-- Class02 Class03 *-- Class04 ...
- Python中怎么读写文件
python中对文件的操作大概分为三步:打开文件.操作文件(读.写.追加写入).关闭文件. 1.无论对文件做哪种操作,操作前首先要保证文件被打开了,即需要一个打开的操作. 例:open(XXX.txt ...
- 关于Oracle单行函数的讲解
单行函数:对单个数值进行操作,并返回一个值. 分类:1.字符函数 1)concat(a,b) 拼接a,b两个字符串数据 2)initcap(x) 将每个单词x首字母大写 3)low ...
- hadoop 安装之 hadoop、hive环境配置
总结了一下hadoop的大致安装过程,按照master . slave的hadoop主从类别,以及root和hadoop集群用户两种角色,以职责图的方式展现,更加清晰一些
- 基于gensim的LDA主题模型实现 一键式函数打包
def genlda(textlist,n): ticks = str(time.time()).replace('.','')[-6:-1] nn=str(n) dictionary = corpo ...
- xshell6 同时操作多个终端
当我们使用Xshell的时候,有时候需要同时建立多个会话,连接不同的服务器或者不同的用户,如何同时向所有会话发送同一指令呢?方法如下: 1.依次点击 查看 ---> 撰写 ---> 撰写 ...
- springboot使用fastjson中文乱码解决方法 【转载】
以前使用fastjson替换jackson时,没有直接在页面打印过json,都是js使用没有出现乱码,偶然 打印出来出现了中文乱码 之前使用的配置方式 @Configuration public cl ...
- AngularJs在ng-click函数中获取代表当前元素的DOM对象
html代码 <div ng-click="test($event)">111</div> Controllers.js $scope.test= func ...
- 深入理解CADisplayLink和NSTimer
一.什么是CADisplayLink 简单地说,它就是一个定时器,每隔几毫秒刷新一次屏幕. CADisplayLink是一个能让我们以和屏幕刷新率相同的频率将内容画到屏幕上的定时器.我们在应用中创建一 ...