php中常见数组处理函数

1.range(),自动创建一个索引数组,需传递两个参数,第一个参数为数组开始的值,第二个为数据结束的值,第三个参数为可选参数:为允许设定值之间的幅度。

2.list()函数用于在一次操作中给一组变量赋值,把数组中的值赋值给一些变量

3.reset()将当前元素重新设置到数组开始处、

4.sort();

对索引数组进行升序排序。

注释:本函数为数组中的单元赋予新的键名。原有的键名将被删除。

如果成功则返回 TRUE,否则返回 FALSE。

sort(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 对字符串进行排序,不区分大小写。

5.asort(),根据数组的每个元素值进行排序(升序),相对应的降序为arsort()函数

6.ksort().根据数组的每个元素键进行排序(升序),相对应的降序为krsort()函数

7.usort()

通过用户自定义的比较函数对数组进行排序。

语法

usort(array,myfunction);
参数描述
array 必需。规定要进行排序的数组。
myfunction 可选。定义可调用比较函数的字符串。如果第一个参数小于等于或大于第二个参数,那么比较函数必须返回一个小于等于或大于 0 的整数。

说明

usort() 函数使用用户自定义的函数对数组排序。

注释:如果两个元素比较结果相同,则它们在排序后的数组中的顺序未经定义。到 PHP 4.0.6 之前,用户自定义函数将保留这些元素的原有顺序。但是由于在 4.1.0 中引进了新的排序算法,结果将不是这样了,因为对此没有一个有效的解决方案。

注释:本函数为 array 中的元素赋予新的键名。这会删除原有的键名。

8.shuffle(),将数组的各个元素进行随机排序;该函数为数组中的元素分配新的键名。已有键名将被删除

9.array_reverse()给出一个原来数组的反向排序

10.explode(),与其相反的胃implode()函数

把字符串打散为数组。

注释:"separator" 参数不能是空字符串。

注释:该函数是二进制安全的。

语法

explode(separator,string,limit)
参数描述
separator 必需。规定在哪里分割字符串。
string 必需。要分割的字符串。
limit

可选。规定所返回的数组元素的数目。

可能的值:

  • 大于 0 - 返回包含最多 limit 个元素的数组
  • 小于 0 - 返回包含除了最后的 -limit 个元素以外的所有元素的数组
  • 0 - 返回包含一个元素的数组

11.current()返回数组的第一个元素

12.end()将数组指针移动到末尾,返回数组最后一个元素

13.next()将指针前移,返回新的当前元素与之相反的为prev()函数

14.pos() 函数返回数组中的当前元素的值。

15.array_walk()

函数对数组中的每个元素应用用户自定义函数。在函数中,数组的键名和键值是参数。

注释:您可以通过把用户自定义函数中的第一个参数指定为引用:&$value,来改变数组元素的值(参见实例 2)。

提示:如需操作更深的数组(一个数组中包含另一个数组),请使用 array_walk_recursive() 函数。

语法

array_walk(array,myfunction,userdata...)
参数描述
array 必需。规定数组。
myfunction 必需。用户自定义函数的名称。
userdata,... 可选。规定用户自定义函数的参数。您能够向此函数传递任意多参数。

说明

array_walk() 函数对数组中的每个元素应用回调函数。如果成功则返回 TRUE,否则返回 FALSE。

典型情况下 myfunction 接受两个参数。array 参数的值作为第一个,键名作为第二个。如果提供了可选参数 userdata,将被作为第三个参数传递给回调函数。

如果 myfunction 函数需要的参数比给出的多,则每次 array_walk() 调用 myfunction 时都会产生一个 E_WARNING 级的错误。这些警告可以通过在 array_walk() 调用前加上 PHP 的错误操作符 @ 来抑制,或者用 error_reporting()。

注释:如果回调函数需要直接作用于数组中的值,可以将回调函数的第一个参数指定为引用:&$value。(参见例子 3)

注释:将键名和 userdata 传递到 myfunction 中是 PHP 4.0 新增加的。

16.count(),统计数组的元素个数,sizeof()也是如此

17.array_count_values()统计每个特定的值在数组中出现过的次数,返回一个包含频率的关联数组,之前数组的值作为返回数组的键,频率作为返回数组的值

18.extract(),将数组转化成标量变量(数组的键作为变量名称,值则为变量的值)

posted @ 2019-07-18 12:14  絮风幻影  阅读(294)  评论(0)    收藏  举报