在php中如何对一个数组进行升序和降序排列?

在php中如何对一个数组进行升序和降序排列?,第1张

升序:sort()函数

降序:rsort()函数

<?php

$people=array('name','sex','nation','birth')

foreach ($people as $mychrs)

echo $mychrs." "

sort($people)

echo "<br />---排序后---<br />"

foreach ($people as $mychrs)

echo $mychrs." "

?>

PHP中除了升序函数以外,还有降序或称反向排列的函数,就是rsort()函数,比如:

$num1=range(1,9)

rsort($num1)

这里其实就相当于range(9,1)

多重排序,order by 字段 方式,字段 方式...

order by age desc,id desc 先按年龄降序,相同的年龄里按id降序

order by id,age desc 先按id升序,相同的id里按年龄降序

至于你到底需要什么样的排序方式,按这个思路自己写就可以了

<?php

$sort = $_GET['sort']

$order = $_GET['order']

$order=='' &&$order='asc'

$order_next=($order=='asc'?'desc':'asc')

switch($sort) {

case 'id':

echo 'SORT BY ID<br>'

echo 'ORDER is '.$order

break

case 'name':

echo 'SORT BY NAME<br>'

echo 'ORDER is '.$order

break

case 'date':

echo 'SORT BY DATE<br>'

echo 'ORDER is '.$order

break

default:

echo 'WHAT ARE U DOING ??'

}

?>

<p>

<a href="?sort=id&order=<?php echo $order_next?>">ID</a><br/>

<a href="?sort=name&order=<?php echo $order_next?>">NAME</a><br/>

<a href="?sort=date&order=<?php echo $order_next?>">DATE</a><br/>

</p>

你只需要在每个 CASE 下构造你的sql查询语句就行了,这个实现方法比较简单,但是还有一些不完美的地方,比如 order=$order_next 这个做法并不好,我主要是给你提个我的思路,如果你需要一个更完美的功能,那你就再自己去优化完善一下吧。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/6723785.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-27
下一篇2023-03-27

发表评论

登录后才能评论

评论列表(0条)

    保存