本文目录一览:
- 1、在php中如何对一个数组进行升序和降序排列?
- 2、PHP求助,有二维数组如下,我想要他按照num降序排,改怎么写?
- 3、php 二维数组的排序问题
- 4、php中有哪些排序的内置函数?
- 5、PHP编写降序?
- 6、PHPadmin里怎么设置升序和降序排列
在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就对了