
正文
php实现数据排名 php实现快速排序
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
php 问题。比如foreach遍历10条数据,然后给按第一名,第二名,第三名...这样加个排名怎么加?求高手
冒泡排序
$tem = $array[0];
foreach($array $key $value){
if($tem $value){
$array[$key] = $value;
$tem = $value
}
}
foreach外面嵌套一个for循环php实现数据排名,循环次数为数组元素个数
相关问答
Q1: php如何实现分数排名,判断该学生第几名,如图
先根据票数倒序查询票数表php实现数据排名,sql语句大概是
"SELECT 学生id,票数 FROM 票数表 ORDER BY 票数 DESC";假设得到php实现数据排名的结果集赋值为 $res,
再用PHP遍历,
$student = array();
foreach ($res as $key = $value) {
$student[$value['学生id']] = $key +1;
}
最后就可以得到student排名数组,键是学生的id,值就是学生的排名。
Q2: php数组中单个数据在数组中的排名怎么实现?小于某给定排名值的数据以"-(横杠)"替代,不改就原数组顺序?
sort($arr);由小到大的顺序排序(第二个参数为按什么方式排序)忽略键名的数组排序
rsort($arr);由大到小的顺序排序(第二个参数为按什么方式排序)忽略键名的数组排序
Q3: 数据库中某项其中一个值在该项排第几,php+mysql
这个如果想要性能的话,就用下面的sql语句实现:
select orderNo from (select (@rowNum:=@rowNum+1) orderNo , xuehao,cishu from record,(Select (@rowNum :=0) ) b
order by cishu desc)t where t.xuehao=112
然后php获得这条结果数组,取第一个元素即是排序
如果对这个sql语句有疑问,不明白,可以使用一个比较耗费性能的方法:
select xuehao,cishu from record order by cishu desc
执行这条语句,获得一个数组$res
遍历前设置一个记录排序的标识 $seq=1;
for(...){
$xuehao=$res['xuehao'];//把第seq 个位置的学号拿出来,跟想要的学号比
if($xuehao==112){
break;
}
$seq++;
}
//如果 这个排序标识比结果集数组大小还大,说明没这个学号的记录,否则,就是这个学号打卡次数的排序。
$seq就是排序
Q4: 如何利用php数组对百万数据进行排重
如果你已经使用了一段时间PHP的话,那么,你应该已经对它的数组比较熟悉了——这种数据结构允许你在单个变量中存储多个值,并且可以把它们作为一个集合进行操作。
经常,开发人员发现在PHP中使用这种数据结构对值或者数组元素进行排序非常有用。PHP提供了一些适合多种数组的排序函数,这些函数允许你在数组内部对元素进行排列,也允许用很多不同的方法对它们进行重新排序。在这篇文章中我们将讨论该排序中最重要的几个函数。
简单排序
首先,让我们来看看最简单的情况:将一个数组元素从低到高进行简单排序,这个函数既可以按数字大小排列也可以按字母顺序排列。PHP的sort()函数实现了这个功能,如Listing A所示:
Listing A
?php
 $data = array(5,8,1,7,2);
 sort($data);
 print_r($data);
 ?
输出结果如下所示:
Array ([0] = 1
[1] = 2
[2] = 5
[3] = 7
[4] = 8
)
Q5: 怎么用PHP编写排行榜?
可以给你的数据库里面添加一个投票次数的字段,根据这个字段,查询时候SQL语句后面 order by 投票次数 desc 就可以排行了。
关于php实现数据排名和php实现快速排序的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







