在php中,排序是我们日常编程中经常需要用到的操作之一,针对数组的排序,php提供了多种排序函数来帮助我们完成该任务。
接下来我们就来介绍几种常见的PHP数组排序方法。
- sort函数
sort函数是PHP内置的排序函数之一,可以对数组进行升序排序,也可以对关联数组进行排序。
sort函数的语法为:
bool sort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
其中,array为要排序的数组,sort_flags为可选参数,可以用于指定排序方式,如:
立即学习“PHP免费学习笔记(深入)”;
- SORT_REGULAR - 默认的排序方式。把每一项按照普通的方式进行比较。
- SORT_NUMERIC - 把每一项按照数字方式进行比较。
- SORT_STRING - 把每一项按照字符串方式进行比较。
- SORT_LOCALE_STRING - 把每一项按照本地化的字符串方式进行比较。
- SORT_NATURAL - 把每一项按照自然排序方式进行比较。
- SORT_FLAG_CASE - 只有在和SORT_STRING或SORT_NATURAL一起使用的时候才有效。不区分大小写的方式进行排序。
示例代码:
$numbers = array(1,3,2,5,4); sort($numbers); print_r($numbers);
输出结果:
专为中小型企业定制的网络办公软件,富有竞争力的十大特性: 1、独创 web服务器、数据库和应用程序全部自动傻瓜安装,建立企业信息中枢 只需3分钟。 2、客户机无需安装专用软件,使用浏览器即可实现全球办公。 3、集成Internet邮件管理组件,提供web方式的远程邮件服务。 4、集成语音会议组件,节省长途话费开支。 5、集成手机短信组件,重要信息可直接发送到员工手机。 6、集成网络硬
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
)- rsort函数
rsort函数是sort函数的逆序排序函数,也可以对数组进行降序排序。
rsort函数的语法为:
bool rsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
其中,array为要排序的数组,sort_flags为可选参数,表示排序的方式,具体含义同sort函数。
示例代码:
$numbers = array(1,3,2,5,4); rsort($numbers); print_r($numbers);
输出结果:
Array
(
[0] => 5
[1] => 4
[2] => 3
[3] => 2
[4] => 1
)- asort函数
asort函数可以对关联数组进行升序排序,但是保留了原始键的关联性,即键值会随之变动。
asort函数的语法为:
bool asort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
其中,array为要排序的数组,sort_flags为可选参数,表示排序的方式,具体含义同sort函数。
示例代码:
$numbers = array("a"=>1,"c"=>3,"b"=>2,"e"=>5,"d"=>4);
asort($numbers);
print_r($numbers);输出结果:
Array
(
[a] => 1
[b] => 2
[c] => 3
[d] => 4
[e] => 5
)- arsort函数
arsort函数是asort函数的逆序排序函数,也可以对关联数组进行降序排序。
arsort函数的语法为:
bool arsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
其中,array为要排序的数组,sort_flags为可选参数,表示排序的方式,具体含义同sort函数。
示例代码:
$numbers = array("a"=>1,"c"=>3,"b"=>2,"e"=>5,"d"=>4);
arsort($numbers);
print_r($numbers);输出结果:
Array
(
[e] => 5
[d] => 4
[c] => 3
[b] => 2
[a] => 1
)- ksort函数
ksort函数可以对关联数组进行升序排序,但是保留了原始键的关联性,即键值不会随之变动。
ksort函数的语法为:
bool ksort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
其中,array为要排序的数组,sort_flags为可选参数,表示排序的方式,具体含义同sort函数。
示例代码:
$numbers = array("a"=>1,"c"=>3,"b"=>2,"e"=>5,"d"=>4);
ksort($numbers);
print_r($numbers);输出结果:
Array
(
[a] => 1
[b] => 2
[c] => 3
[d] => 4
[e] => 5
)- krsort函数
krsort函数是ksort函数的逆序排序函数,也可以对关联数组进行降序排序。
krsort函数的语法为:
bool krsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
其中,array为要排序的数组,sort_flags为可选参数,表示排序的方式,具体含义同sort函数。
示例代码:
$numbers = array("a"=>1,"c"=>3,"b"=>2,"e"=>5,"d"=>4);
krsort($numbers);
print_r($numbers);输出结果:
Array
(
[e] => 5
[d] => 4
[c] => 3
[b] => 2
[a] => 1
)以上就是PHP中实现数组排序的方法介绍,相信大家已经掌握了数组排序的相关函数及使用方法,可以轻松应付日常编程中的排序需求。










