PHP常见数组排序方法小汇总

1.简单数组排序 sort() 函数和rsort() 函数:

语法规则:

bool sort(array &array [,int sort_flags]
bool rsort(array &array [.int_sort_flags]

参数:

第一个参数是排序数组对象

第二个参数是可以选的 可选值:

SORT_REGULAR:是默认值,将自动识别数组的元素类型进行排序
SORT_NUMERIC:用于数组元素排序
SORT_STRING:用于字符串排序
SORT_LOCALE_STRING:根据当前的locale设置来把元素当作字符串比较

示例:

$a=array(4,7,9,1);
sort($a);
pirnt_r($a);
rsort($a);
print_r($a);

2.根据键名对数组排序

定义: ksort() 函数按照键名对数组进行有小到大的排序。 krsort()ksort()函数相反,排序后为数组值保持原来的键。

示例

$data= array(5=>"five",8=>"eight",1=>"one",7=>"seven");
ksrot($data);
print_r($data);
krsot($data);
print_r($data);

3.根据元素值排序

定义 : asort() 从小到大 / arsort() 从大到小,用这个函数排序,原始键名将被忽略,使用依次数字重新索引数组下标

示例 :

$data=array("a"=>1,"b"=>2,"c"=>3);
asort($data);
print_r($data);
arsort($data);
print_r($data);

4.自然排序

定义 : 是个非常特殊的排序方式,这种方式使用认知而不是使用计算规则,这种特性称为——自然排序法,即数字从1到9,字母从a-z,短者优先。

示例 :

$data=array("file1.txt","file11.txt","file111.txt");
natsort($data);//普通自然排序
natcasesort($data);//忽略大小写

5.根据用户自定义排序规则

语法规则 :

bool usort(array &array ,callback cmp_function)
bool uasort(array &array,callback cmp_function)
bool uksort(array &array,callback cmp_function)

说明 : 自定义回调函数,需要两个参数,分别是数组两个连续元素,比较第一个参数小于,大于,等于第二个参数是分别返回 0,1,-1

示例 :

$data= array("ab","abc","a","ac","abcd");
usrot($data,"mysortByLen");
function mysortByLen($one,$two){
 if(strlen($one)== strlen($two)){
  return 0;
 }else{
 return (strlen($one)>strlen($two))?1:-1;
}

6.多维数组排序

定义 : array_multisort()函数对多个数组排序,或者根据某一维或多维对多维数组排序。

bool array_multisort(array array1 [,mixed arg,[,array ....]])

示例:

$data=array(
  array("id"=>1,"name"=>4),
  array("id"=>1,"name"=>2),
  array("id"=>2,"name"=>3)
);
foreach($data as $key=>$value){
 $ids[$key]=$value["id"];
 $names[$key]=$value["name"]
}
array_multisort($data,$ids,$names);
print_r($data);

输出结果:

array(    array("id"=>1,"name"=>2),    array("id"=>1,"name"=>4),    array("id"=>2,"name"=>3)
 );

关于PHP常见数组排序方法小汇总的文章就分享到这,如果对你有帮助欢迎继续关注我们哦

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/42110.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
php学习php学习订阅用户
上一篇 2022年6月25日 01:24
下一篇 2022年6月25日 01:24

相关推荐

  • PHP可变变量的理解

    可变变量 所谓可变变量,就是一个变量的名,又是一个变量。 可变变量的语法是php的很特殊的语法——其他语言中少见。 $v1 = “abc”;          //这是一个字符串变量,其内容是字符串“abc” $abc = 10;             //这…

    2017年11月6日
    0453
  • 详解PHP中被忽略的性能优化利器:生成器

    如果是做Python或者其他语言的小伙伴,对于生成器应该不陌生。但很多PHP开发者或许都不知道生成器这个功能,可能是因为生成器是PHP 5.5.0才引入的功能,也可以是生成器作用不是很明显。但是,生成器功能的确非常有…

    2022年6月20日
    0110
  • 重蔚自留地php学习第三十九天——关于mysql事物触发器函数过程的总结

    数据备份 对数据表内容进行备份 备份:select [*/字段列表] into outfile 文件路径 [字段处理] [行处理] from 表 还原:load data infile 文件路径 into 表 [字段处理] [行处理] 备份 ---------------》 数据库 -&g…

    2018年10月26日
    0239
  • PHP中的编辑器和IDE。

    纵观现今互联网开发领域,PHP一度成为最受欢迎的的编程语言之一。许多公司和个人使用PHP开发网站、应用程序和电子商务解决方案。而在PHP开发中,选择一款优秀的编辑器和IDE是非常重要的,因为它们可以提高我们的编…

    2023年5月28日
    01
  • 如何在PHP中实现复杂企业应用系统。

    随着企业规模的扩大,企业应用系统日益复杂。在这种情况下,如何在PHP中实现复杂企业应用系统的开发和维护,成为了每个PHP开发人员必须处理的问题。以下是一些实用的技巧和建议,帮助PHP开发人员更好地实现复杂的企…

    2023年5月22日
    00
  • 全面指南:使用PHP开发直播功能的步骤。

    随着直播技术的不断发展,直播平台也逐渐普及,对于开发者来说,掌握如何使用PHP开发直播功能是一项非常有价值的技能。那么,你想知道使用PHP开发直播功能的步骤吗?下面是一份全面指南,让你轻松掌握。第一步:选…

    2023年5月23日
    06
  • 经验分享php写网页有哪些优点和缺点。

    PHP是一种广泛使用的开源服务器端脚本语言,用于创建动态网页和Web应用程序,它具有许多优点,使其成为开发人员的首选工具之一,以下是PHP写网页的一些主要优点: 1. 易于学习和使用:PHP具有简洁的语法和易于理解…

    2024年6月29日
    00
  • PHP入门指南:数组。

    PHP是一种服务器端脚本语言,适用于Web开发,它可以通过处理HTML表单、访问数据库和使用Cookies等方式来创建动态交互性Web页面。在PHP中,数组是一种非常重要的数据类型,本篇文章将为您带来PHP数组的入门指南,并…

    2023年5月22日
    00

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息