后端开发|php教程
数组,php
后端开发-php教程
这篇文章给大家分享的内容是关于php数组排序函数 ,有一定的参考价值,有需要的朋友可以参考一下。
winform 编辑器 源码,安装ubuntu 教程,tomcat读什么意思,88黄页爬虫,PHP程序员招聘渠道,SEO整站教程搜索引擎优化lzw
函数中有u
的,能自定义比较函数;有k
的,按照键来排序;有r
(reverse)的,倒序;有a(association)
的,一定是键值关联,除了rsort()
usort()
sort()
shuffle()
,其他没有a
的都是键值关联,array_multisort()
键值关联的保持,数字类型的不保持。
sandboxie 源码,vscode 里git汉化,ubuntu中压缩,tomcat接口绑定端口,狍子爬虫,php弹出信息,谷歌seo推广公司聊城,怎么获取网站php源码下载,自适应模板配套插件.lzw
下列的所有排序函数都是直接作用于数组本身, 而不是返回一个新的有序的数组。
易语言去皮肤小衣服源码,ubuntu默认软件卸载,爬虫规则页面化,php后缀与phP,seo学习王lzw
以下函数对于数组中相等的元素,它们在排序后的顺序是未定义的。 (也即相等元素之间的顺序是不稳定的,即具有相同值的元素每次排序的结果都是不确定(关联数组))。php7asort
arsort
uasort
已实现稳定排序,php5稳定排序:/manual/zh/func…
在对含有混合类型值的数组排序时要小心,因为 sort() 可能会产生不可预知的结果。
1.array_multisort
可以用来一次对多个数组进行排序,或者根据某一维或多维对多维数组进行排序。
bool array_multisort ( array &$array1 [, mixed $array1_sort_order = SORT_ASC [, mixed $array1_sort_flags = SORT_REGULAR [, mixed $... ]]] )
1.1 如果有多个数组参数时,$array2
会根据$array1
的结果排序,像MySQL的group by
1.2 不区分大小写的排序:
$array = array(Alpha, atomic, Beta, ank);$array_lowercase = array_map(strtolower, $array); // 先复制一个转为小写数组array_multisort($array_lowercase, SORT_ASC, SORT_STRING, $array); // 先对小写数组排序,再排序原数组print_r($array);
1.3 对数据库结果进行排序
function array_orderby(){ $args = func_get_args(); $data = array_shift($args); foreach ($args as $n => $field) { if (is_string($field)) { $tmp = array(); foreach ($data as $key => $row)$tmp[$key] = $row[$field]; $args[$n] = $tmp; } } $args[] = &$data; call_user_func_array(array_multisort, $args); return array_pop($args);}
2.sort
删除原有的键名对数组排序(顺序)
bool sort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
sort($fruits, SORT_NATURAL | SORT_FLAG_CASE);
排序结果和natcasesort()
一样。
3.rsort
对数组逆向排序
bool rsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
4.asort
保持键值关联(association)。主要用于对那些单元顺序很重要的结合数组进行排序。
bool asort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
5.arsort
倒序并保持索引关系(association,reverse)
bool arsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
6.ksort
按键名
排序
bool ksort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
7.krsort
按键名
倒序
bool krsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
8.usort
使用用户自定义的比较函数对数组中的值
进行排序,要排序的数组需要用一种不寻常的标准进行排序,那么应该使用此函数。
bool usort ( array &$array , callable $value_compare_func )
$value_compare_func( mixed $a, mixed $b )
在$a
小于,等于或大于$b
时,该比较函数必须相应地返回一个小于,等于或大于 0 的整数。
usort($a, array("TestObj", "cmp_obj"))
对象属性排序
9.uasort
使用用户自定义的比较函数对数组中的值进行排序并保持索引关联
bool uasort ( array &$array , callable $value_compare_func )
10.uksort
使用用户自定义的比较函数对数组中的键名
进行排序
bool uksort ( array &$array , callable $key_compare_func )
11.natcasesort
不区分大小写字母的自然排序(排完字母再排数字),保持键值关联
bool natcasesort ( array &$array )
12.natsort
用“自然排序”算法对数组排序,保持键值关联
bool natsort ( array &$array )
13.shuffle
本函数打乱(随机排列单元的顺序)一个数组。键值不关联
bool shuffle ( array &$array )
PHP中10种字符串常用函数介绍以及使用方法