重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
楼上说的比较正确
创新互联建站是一家专注于成都网站制作、成都做网站、外贸营销网站建设与策划设计,萨迦网站建设哪家好?创新互联建站做网站,专注于网站建设十载,网设计领域的专业建站公司;建站业务涵盖:萨迦等地区。萨迦做网站价格咨询:028-86922220
?php
首先链接你的数据库
sql="select
*
from
test
order
by
t
desc
limit
0,100"
$ret=mysql_query($sql,$db);//$db为数据库连接
$zone=1;
while($row=mysql_fetch_array($ret)){
echo
"名次:".$zone.",";
echo
$row['m'];//用户名
echo
$row['t'];//积分
echo
$row['u'];//序号
echo
"br/";
}
?
thinkphp使用的数据库是mysql,mysql多个字段排序的语句:
select
* from `表名` where 条件 order by 字段1 desc,字段2
asc,...
thinkphp中排序方法为
$User-where('score0')-order('score desc')....;
但是例子中只能单字段排序,不过可以理解成字符串,那就可以这样写试试
$User-where('score0')-order('score desc,id asc,...')....;
这篇文章主要介绍了PHP实现指定字段的多维数组排序函数分享,本文分享了一段PHP指定字段的多维数组排序方法的代码,这段代码可实现根据field字段对数组进行排序,需要的朋友可以参考下
PHP数组排序可以用array_multisort方法实现,但是如果是多维数组,并且我们要指定数组中的某个字段进行排序,那么这就需要我们自己写方法实现了。本文分享了一段PHP指定字段的多维数组排序方法的代码,这段代码可实现根据field字段对数组进行排序。
代码如下:
function
sortArrByField($array,
$field,
$desc
=
false){
$fieldArr
=
array();
foreach
($array
as
$k
=
$v)
{
$fieldArr[$k]
=
$v[$field];
}
$sort
=
$desc
==
false
?
SORT_ASC
:
SORT_DESC;
array_multisort($fieldArr,
$sort,
$array);
}
以上就是PHP指定字段的多维数组排序方法,希望这段PHP代码对你带来帮助。
多重排序,order by 字段 方式,字段 方式...
order by age desc,id desc 先按年龄降序,相同的年龄里按id降序
order by id,age desc 先按id升序,相同的id里按年龄降序
至于你到底需要什么样的排序方式,按这个思路自己写就可以了
是不是在查出来的已经排序过的数组中找到某个id?如果是,那么假如说现在有10条数据,已经排序完成, 我需要找到我的id是2的排在第几个?
/**
*假如说现在是数组$data,里面有id是2的数据.那么,$id = 2.(我是按照从数据库中查出来的数据进行写的,数据库查出来的是二维数组)
*循环数组$data,判断id字段是2的值,如果相等,那么拿出该数组的下标,并+1(数组默认从0开始)
**/
$id = 2;
$key = '';
foreach ($data as $k = $v) {
if ($v['id'] == $id) {
$key = $k + 1;
}
}
var_dump($key);//这就是你需要的名次
1. 服务器端排序, 你的方法是其中之一
2. 浏览器端排序, 可以用jsp实现. 我曾经用jquery做过类似的功能, 挺简单的:
方法:
保存数据到二维表,
定义click事件:
按点击的字段排序, 按顺序生成每一行的html代码, 清空原来的html代码, 加入新生成的顺序html代码