您的位置:

php降序排列,php 排序算法

本文目录一览:

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

升序: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)

PHP求助,有二维数组如下,我想要他按照num降序排,改怎么写?

$a = array(

array(

'id'=1,

'num'=501

),

array(

'id'=3,

'num'=5651

),

array(

'id'=5,

'num'=145

),

);

foreach ($a as $k=$v){

$num[] = $v['num'];

}

array_multisort($num,SORT_DESC,$a);

print_r($a);

php 二维数组的排序问题

对二维数组排序,得用到array_multisort()

下面是从php手册摘出来的例子.具体请根据你的问题查阅手册.

=========

数据全都存放在名为 data 的数组中。这通常是通过循环从数据库取得的结果,例如 mysql_fetch_assoc()。

?php

$data[] = array('volume' = 67, 'edition' = 2);

$data[] = array('volume' = 86, 'edition' = 1);

$data[] = array('volume' = 85, 'edition' = 6);

$data[] = array('volume' = 98, 'edition' = 2);

$data[] = array('volume' = 86, 'edition' = 6);

$data[] = array('volume' = 67, 'edition' = 7);

?

本例中将把 volume 降序排列,把 edition 升序排列。

现在有了包含有行的数组,但是 array_multisort() 需要一个包含列的数组,因此用以下代码来取得列,然后排序。

?php

// 取得列的列表

foreach ($data as $key = $row) {

$volume[$key] = $row['volume'];

$edition[$key] = $row['edition'];

}

// 将数据根据 volume 降序排列,根据 edition 升序排列

// 把 $data 作为最后一个参数,以通用键排序

array_multisort($volume, SORT_DESC, $edition, SORT_ASC, $data);

?

数据集合现在排好序了,结果如下:

volume | edition

-------+--------

98 | 2

86 | 1

86 | 6

85 | 6

67 | 2

67 | 7

php中有哪些排序的内置函数?

定义和用法

krsort() 函数对关联数组按照键名进行降序排序。

提示:请使用 ksort() 函数对关联数组按照键名进行升序排序。

提示:请使用 arsort() 函数对关联数组按照键值进行降序排序。

语法

krsort(array,sortingtype);

参数 描述

array 必需。规定要进行排序的数组。

sortingtype 可选。规定如何排列数组的元素/项目。可能的值:

0 = SORT_REGULAR - 默认。把每一项按常规顺序排列(Standard ASCII,不改变类型)。

1 = SORT_NUMERIC - 把每一项作为数字来处理。

2 = SORT_STRING - 把每一项作为字符串来处理。

3 = SORT_LOCALE_STRING - 把每一项作为字符串来处理,基于当前区域设置(可通过 setlocale() 进行更改)。

4 = SORT_NATURAL - 把每一项作为字符串来处理,使用类似 natsort() 的自然排序。

5 = SORT_FLAG_CASE - 可以结合(按位或)SORT_STRING 或 SORT_NATURAL 对字符串进行排序,不区分大小写。

定义和用法

ksort() 函数对关联数组按照键名进行升序排序。

提示:请使用 krsort() 函数对关联数组按照键名进行降序排序。

提示:请使用 asort() 函数对关联数组按照键值进行升序排序。

对关联数组按照键名进行升序排序:"35","Ben"="37","Joe"="43")

ksort($age);

?

PHP编写降序?

你可以找到这个查询的sql在where条件后面加一个ORDER BY ID DESC

也可以使用PHP方法

$arrUsers = array(

array(

'id' = 1,

'name' = '张三',

'age' = 25,

),

array(

'id' = 2,

'name' = '李四',

'age' = 23,

),

array(

'id' = 3,

'name' = '王五',

'age' = 40,

),

array(

'id' = 4,

'name' = '赵六',

'age' = 31,

),

array(

'id' = 5,

'name' = '黄七',

'age' = 20,

),

);

$sort = array(

'direction' = 'SORT_DESC', //排序顺序标志 SORT_DESC 降序;SORT_ASC 升序

'field' = 'age', //排序字段

);

$arrSort = array();

foreach($arrUsers AS $uniqid = $row){

foreach($row AS $key=$value){

$arrSort[$key][$uniqid] = $value;

}

}

if($sort['direction']){

array_multisort($arrSort[$sort['field']], constant($sort['direction']), $arrUsers);

}

var_dump($arrUsers);

PHPadmin里怎么设置升序和降序排列

是phpmyadmin吧,DESC是降序排列,utf-8-general-ci是整理规则不用管,知道是utf-8就对了