您的位置:首页 > 编程语言 > PHP开发

PHP数组常用操作与常用排序函数

2017-04-23 23:37 621 查看
1、统计数组中元素个数:

int count(mixed array [,int mode])--第二个参数值为COUNT_RECURSIVE(或1),使用本参数,本函数将会递归的对数组计数,对计算多维数组的所有单元尤其有用。此参数默认值为0.
2、向数组末尾加入一个元素:(将数组当为一个栈)

int array_push(array array,mixed var)--第一个参数原数组,第二个参数被压入的数组。
3、获取数组最后一个元素:

mixed array_pop(array array)--取出最后一个元素,数组元素个数减一,
4、去除数组中的重复元素:

array array_unique()--删除数组中重复元素,索引保留
5、对数组中的元素进行随机排序:

void shuffle()--将数组中的元素重新排序,并赋予新的索引
6、检查数组中是否存在某个值:

bool array_key_exists(key,array)--检查给定的键名或索引key是否存在于数组array中
7、获取数组中的当前元素:

mixed current(array)--返回数组内部指针指向的元素,但并不移动指针,超出数组的末端,返回FALSE
8、从数组中随机抽取元素:

mixed array_rand(array,num)--array:传入数组,num:输出数组元素的个数,返回一个随机元素的键名或者包含随机键名的数组。
9、合并数组:

array array_merge()--合并多个数组,将后面一个数组的值附加到前面一个数组中。如果这两个数组有相同的字符串键名,则该键名后面的值将覆盖前面的值,如果有相同的数字键名,则后面的值的键名会改变并附加到前一个数组中。
10、拆分数组:

array array_chunk(array,size)--array:源数组,size:分割成指定数量的数组
11、数组常用排序函数:

主要区别有:
- 有些函数基于 array 的键来排序, 而其他的基于值来排序的:$array['key'] = 'value';。
- 排序之后键和值之间的关联关系是否能够保持, 是指排序之后数组的键可能 会被重置为数字型的(0,1,2 ...)。
- 排序的顺序有:字母表顺序, 由低到高(升序), 由高到低(降序),数字排序,自然排序,随机顺序或者用户自定义排序。
- 注意:下列的所有排序函数都是直接作用于数组本身, 而不是返回一个新的有序的数组。
- 以下函数对于数组中相等的元素,它们在排序后的顺序是未定义的。 (也即相等元素之间的顺序是不稳定的)。

函数名称           排序依据                         数组索引键保持                         排序的顺序                      相关函数
array_multisort()  值                    键值关联的保持,数字类型的不保持            第一个数组或者由选项指定               array_walk()

asort()            值                                是                                由低到高                         arsort()

arsort()           值                                是                                由高到低                         asort()

krsort()           键                                是                                由高到低                         ksort()

ksort()            键                                是                                由低到高                         asort()

natcasesort()      值                                是                           自然排序,大小写不敏感                 natsort()

natsort()          值                                是                                自然排序                         natcasesort()

rsort()            值                                否                                由高到低                         sort()

shuffle()          值                                否                                  随机                           array_rand()

sort()             值                                否                                由高到低                         rsort()

uasort()           值                                是                                由用户定义                       uksort()

uksort()           键                                是                                由用户定义                       uasort()

usort()            值                                否                                由用户定义                       uasort()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息