• PHP数组函数(6)


    1.arsort() 函数对关联数组按照键值进行降序排序

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

    arsort() 函数对数组进行逆向排序并保持索引关系。主要用于对那些单元顺序很重要的结合数组进行排序。

    可选的第二个参数包含了附加的排序标识。

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

    2. asort() 函数对关联数组按照键值进行降序排序

    asort(array,sortingtype);

    asort() 函数对数组进行排序并保持索引关系。主要用于对那些单元顺序很重要的结合数组进行排序。

    可选的第二个参数包含了附加的排序标识。

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

    3. compact() 函数创建包含变量名和它们的值的数组

    compact(var1,var2...)

    compact() 函数创建一个由参数所带变量组成的数组。如果参数中存在数组,该数组中变量的值也会被获取。

    本函数返回的数组是一个关联数组,键名为函数的参数,键值为参数中变量的值。

    本函数执行的行为与 extract() 正好相反。

    4. extract() 函数从数组中将变量导入到当前的符号表

    extract(array,extract_rules,prefix)
    • EXTR_OVERWRITE - 默认。如果有冲突,则覆盖已有的变量。
    • EXTR_SKIP - 如果有冲突,不覆盖已有的变量。
    • EXTR_PREFIX_SAME - 如果有冲突,在变量名前加上前缀 prefix
    • EXTR_PREFIX_ALL - 给所有变量名加上前缀 prefix
    • EXTR_PREFIX_INVALID - 仅在不合法或数字变量名前加上前缀 prefix
    • EXTR_IF_EXISTS - 仅在当前符号表中已有同名变量时,覆盖它们的值。其它的都不处理。
    • EXTR_PREFIX_IF_EXISTS - 仅在当前符号表中已有同名变量时,建立附加了前缀的变量名,其它的都不处理。
    • EXTR_REFS - 将变量作为引用提取。导入的变量仍然引用了数组参数的值。

    prefix可选。请注意 prefix 仅在 extract_type 的值是 EXTR_PREFIX_SAME,EXTR_PREFIX_ALL,EXTR_PREFIX_INVALID 或 EXTR_PREFIX_IF_EXISTS 时需要。如果附加了前缀后的结果不是合法的变量名,将不会导入到符号表中。

    前缀和数组键名之间会自动加上一个下划线。

    该函数使用数组键名作为变量名,使用数组键值作为变量值。针对数组中的每个元素,将在当前符号表中创建对应的一个变量。

    第二个参数 type 用于指定当某个变量已经存在,而数组中又有同名元素时,extract() 函数如何对待这样的冲突。

    该函数返回成功导入到符号表中的变量数目。

    5. count(),sizeof() 函数返回数组中元素的数目

    count(array,mode);

    mode可能的值:

    • 0 - 默认。不对多维数组中的所有元素进行计数
    • 1 - 递归地计数数组中元素的数目(计算多维数组中的所有元素)

    count() 函数计算数组中的单元数目或对象中的属性个数。

    对于数组,返回其元素的个数,对于其他值,返回 1。如果参数是变量而变量没有定义,则返回 0。

    如果 mode 被设置为 COUNT_RECURSIVE(或 1),则会递归底计算多维数组中的数组的元素个数。

    6. current() ,pos() 函数返回数组中的当前元素的值

    每个数组中都有一个内部的指针指向它的"当前"元素,初始指向插入到数组中的第一个元素。

    current() 函数返回当前被内部指针指向的数组元素的值,并不移动指针。如果内部指针指向超出了单元列表的末端,current() 返回 FALSE。

    相关的方法:

    • end() - 将内部指针指向数组中的最后一个元素,并输出
    • next() - 将内部指针指向数组中的下一个元素,并输出
    • prev() - 将内部指针指向数组中的上一个元素,并输出
    • reset() - 将内部指针指向数组中的第一个元素,并输出
    • each() - 返回当前元素的键名和键值,并将内部指针向前移动

    7. in_array() 函数搜索数组中是否存在指定的值

    in_array(search,array,type)

    type可选。如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同。

    8. key() 函数返回数组内部指针当前指向元素的键名

    key(array)

    9. krsort() 函数对关联数组按照键名进行降序排序

    krsort(array,sortingtype);

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

    10. ksort() 函数对关联数组按照键名进行升序排序

    11. list() 函数用于在一次操作中给一组变量赋值

    list(var1,var2...)

    12.natcasesort() 函数用"自然排序"算法对数组进行排序

    键值保留它们原始的键名

    在自然排序算法中,数字 2 小于 数字 10。在计算机排序算法中,10 小于 2,因为 "10" 中的第一个数字小于 2。

    该函数对大小写不敏感。

    如果成功,该函数返回 TRUE,如果失败则返回 FALSE。

    13. natsort() 函数用"自然排序"算法对数组进行排序。键值保留它们原始的键名

    14. range() 函数创建一个包含指定范围的元素的数组

    15. rsort() 函数对数值数组进行降序排序

    16. shuffle() 函数把数组中的元素按随机顺序重新排列

    该函数为数组中的元素分配新的键名。已有键名将被删除

    17. uasort() 函数使用用户自定义的比较函数对数组排序,并保持索引关联(不为元素分配新的键)

    uasort(array,myfunction);

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

    该函数主要用于对那些单元顺序很重要的结合数组进行排序。

    18. uksort() 函数通过用户自定义的比较函数对数组按键名进行排序

    uksort(array,myfunction);

    uksort() 函数使用用户自定义的比较函数按照键名对数组排序,并保持索引关系。

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

    如果要排序的数组需要用一种不寻常的标准进行排序,那么应该使用此函数。

    自定义函数应接受两个参数,该参数将被数组中的一对键名填充。比较函数在第一个参数小于,等于,或大于第二个参数时必须分别返回一个小于零,等于零,或大于零的整数。

    19. usort() 通过用户自定义的比较函数对数组进行排序

    usort(array,myfunction);

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

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

  • 相关阅读:
    selenium的
    condition版生产者与消费者模式
    Xpath语法详解
    requests库的基本使用
    urlib库的使用
    MVC5+EF6 入门完整教程六
    MVC5+EF6 入门完整教程五
    MVC5+EF6 入门完整教程四
    MVC5 + EF6 完整入门教程三
    MVC5 + EF6 入门完整教程二
  • 原文地址:https://www.cnblogs.com/wyzs/p/5201233.html
Copyright © 2020-2023  润新知