• 数组函数



    燕十八 公益PHP培训 
    课堂地址:YY频道88354001 
    学习社区:www.zixue.it 

    函数名 函数作用 参数格式 注意点
    Count() 函数计算数组中的单元数目或对象中的属性个数 count(array,mode)
    mode 可选:
    0 – 默认。不检测多维数组(数组中的数组)
    1 – 检测多维数组。
    [mode参数4.2的时候加入]
    当变量未被设置,或是变量包含一个空的数组,该函数会返回 0。可使用 isset() 变量来测试变量是否被设置。
    array_key_exists() 函数判断某个数组中是否存在指定的 key array_key_exists(key,array) 如果该 key 存在,则返回 true,否则返回 false。
    array_change_key_case(); 函数将数组的所有的 KEY 都转换为大写或小写。
    数组的数字索引不发生变化.
    array_change_key_case(array,case)
    case 可选:
    CASE_LOWER – 默认值。以小写字母返回数组的键。
    CASE_UPPER – 以大写字母返回数组的键。
    如果在运行该函数时两个或多个键相同,则最后的元素会覆盖其他元素
    array_count_values(); 函数用于统计数组中所有值出现的次数。 array_count_values(array) 本函数返回一个数组,其元素的键名是原数组的值,键值是该值在原数组中出现的次数。
    array_fill(); 用给定的值填充数组,返回的数组有 number 个元素,值为 value。
    (批量填充)
    array_fill(start,number,value) 返回的数组使用数字索引,从 start 位置开始并递增。如果 number 为 0 或小于 0,就会出错。
    array_filter(); 函数用回调函数过滤数组中的元素 array_filter(array,function) 如果自定义过滤函数返回 true,则被操作的数组的当前值就会被包含在返回的结果数组中, 并将结果组成一个新的数组。如果原数组是一个关联数组,键名保持不变。
    array_flip(); 函数返回一个反转后的数组(键&值反转) array_flip(array) 如果同一值出现了多次,则最后一个键名将作为它的值,所有其他的键名都将丢失。
    如果原数组中的值的数据类型不是字符串或整数,函数将报错。
    array_sum(); 返回数组中所有值的总和 array_sum(array) 如果所有值多是整数,则返回一个整数值。
    如果其中有一个或多个值是浮点数,则返回浮点数。
    PHP 4.2.1 之前的版本修改了传入的数组本身,将其中的字符串值转换成数值(大多数情况下都转换成了零,根据具体制而定)。
    array_values() 返回一个包含给定数组中所有键值的数组,但不保留键名。 array_values(array) 被返回的数组将使用数值键,从 0 开始且以 1 递增。
    array_keys() 返回包含数组中所有键名的一个新数组。 array_keys(array,value[,strict])
    strict 可选。与 value 参数一起使用。可能的值:
    true – 根据类型返回带有指定值的键名。
    false – 默认值。不依赖类型。
    如果提供了第二个参数,则只返回键值为该值的键名。
    如果 strict 参数指定为 true,则 PHP 会使用全等比较 (===) 来严格检查键值的数据类型。
    in_array() 函数在数组中搜索给定的值。 in_array(value,array,type) 如果给定的值 value 存在于数组 array 中则返回 true。如果第三个参数设置为 true,函数只有在元素存在于数组中且数据类型与给定值相同时才返回 true。
    如果没有在数组中找到参数,函数返回 false。
    注释:如果 value 参数是字符串,且 type 参数设置为 true,则搜索区分大小写。
    array_push() 向第一个参数的数组尾部添加一个或多个元素(入栈),然后返回新数组的长度。
    该函数等于多次调用 $array[] = $value。
    array_push(array,value1,value2…) 注释:即使数组中有字符串键名,您添加的元素也始终是数字键。
    注释:如果用 array_push() 来给数组增加一个单元,还不如用 $array[] =,因为这样没有调用函数的额外负担。
    注释:如果第一个参数不是数组,array_push() 将发出一条警告。这和 $var[] 的行为不同,后者会新建一个数组。
    array_pop() 函数删除数组中的最后一个元素。 array_pop(array)  
    array_shift() 删除数组中的第一个元素,并返回被删除元素的值。 array_shift(array) 如果键是数字的,所有元素都将获得新的键,从 0 开始,并以 1 递增。
    array_unshift() 在数组开头插入一个或多个元素。 array_unshift(array,value1,value2,value3…) 被加上的元素作为一个整体添加,这些元素在数组中的顺序和在参数中的顺序一样。
    该函数会返回数组中元素的个数。
    Sort() 按升序对给定数组的值排序 sort(array,sorttype)
    sorttype
    可选。规定如何排列数组的值。可能的值:
    SORT_REGULAR – 默认。以它们原来的类型进行处理(不改变类型)。
    SORT_NUMERIC – 把值作为数字来处理
    SORT_STRING – 把值作为字符串来处理
    SORT_LOCALE_STRING – 把值作为字符串来处理,基于本地设置*
    本函数为数组中的单元赋予新的键名。原有的键名将被删除。
    如果成功则返回 TRUE,否则返回 FALSE。
    rsort() 对数组的元素按照键值进行逆向排序。 rsort(array,sorttype)sorttype同上 该函数为 array 中的单元赋予新的键名。这将删除原有的键名而不仅是重新排序。
    如果成功则返回 TRUE,否则返回 FALSE。
    可选的第二个参数包含另外的排序标志。
    usort() 使用用户自定义的函数对数组排序 usort(array,sorttype) 如果两个元素比较结果相同,则它们在排序后的数组中的顺序未经定义。到 PHP 4.0.6 之前,用户自定义函数将保留这些元素的原有顺序。但是由于在 4.1.0 中引进了新的排序算法,结果将不是这样了,因为对此没有一个有效的解决方案。

     

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

    asort() 对数组进行升序排序并保持索引关系 asort(array,sorttype) 如果成功则返回 TRUE,否则返回 FALSE。
    ksort() 函数按照键名对数组排序,为数组值保留原来的键。 ksort(array,sorttype) 若成功,则返回 TRUE,否则返回 FALSE。
    natsort() 用自然顺序算法对给定数组中的元素排序 natsort(array) 实现了“自然排序”,即数字从 1 到 9 的排序方法,字母从 a 到 z 的排序方法,短者优先。数组的索引与单元值保持关联。
    如果成功,则该函数返回 TRUE,否则返回 FALSE。
    natcasesort() 用不区分大小写的自然顺序算法对给定数组中的元素排序 natcasesort(array) 实现了“自然排序”,即数字从 1 到 9 的排序方法,字母从 a 到 z 的排序方法,短者优先,该函数不区分大小写。数组的索引与单元值保持关联。
    如果成功,则该函数返回 TRUE,否则返回 FALSE。
    Sort(),Resort(),Usort(),asort(),      
    ksort(),natsort(),natcasesort()      
    array_merge() 把两个或多个数组合并为一个数组。 array_merge(array1,array2,array3…) 如果键名有重复,该键的键值为最后一个键名对应的值(后面的覆盖前面的)。如果数组是数字索引的,则键名会以连续方式重新索引。
    如果仅仅向 array_merge() 函数输入了一个数组,且键名是整数,则该函数将返回带有整数键名的新数组,其键名以 0 开始进行重新索引。
    array_merge_recursive() 将一个或多个数组的元素的合并起来,一个数组中的值附加在前一个数组的后面。并返回作为结果的数组。 array_merge_recursive(array1,array2,array3…) 但是,与 array_merge() 不同的是,当有重复的键名时,值不会被覆盖,而是将多个相同键名的值递归组成一个数组。
    array_diff() 返回两个数组的差集数组。 array_diff(array1,array2,array3…) 该数组包括了所有在被比较的数组中,但是不在任何其他参数数组中的键值。
    在返回的数组中,键名保持不变。
    可用一个或任意多个数组与第一个数组进行比较。
    注释:仅有值用于比较。
    array_diff_assoc() 返回两个数组的差集数组。该数组包括了所有在被比较的数组中,但是不在任何其他参数数组中的键和值。 array_diff_assoc(array1,array2,array3…) 可用一个或任意多个数组与第一个数组进行比较。
    注释:键和值都用于比较。
    array_intersect() 返回两个或多个数组的交集数组。 array_intersect(array1,array2,array3…) 结果数组包含了所有在被比较数组中,也同时出现在所有其他参数数组中的值,键名保留不变。
    注释:仅有值用于比较。
    array_intersect_assoc() 返回两个或多个数组的交集数组 array_intersect_assoc(array1,array2,array3…) 数除了比较键值,还比较键名。返回的数组中元素的键名保持不变
    Range() 创建并返回一个包含指定范围的元素的数组 range(first,second,step)
    first 必需。规定数组元素的最小值。
    second 必需。规定数组元素的最大值。
    step
    可选。规定元素之间的步进制。默认是 1。
    注释:该参数是 PHP 5 中加入的。
    该函数创建一个数组,包含从 first 到 second (包含 first 和 second)之间的整数或字符。如果 second 比 first 小,则返回反序的数组。
    array_unique() 移除数组中的重复的值,并返回结果数组。 array_unique(array) 当几个数组元素的值相等时,只保留第一个元素,其他的元素被删除。
    返回的数组中键名不变。
    先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的 array 中同一个值的第一个出现的键名会被保留。
    被返回的数组将保持第一个数组元素的键类型。
    array_reverse() 将原数组中的元素顺序翻转,,创建新的数组并返回。 array_reverse(array,preserve)
    preserve
    可选。规定是否保留原始数组的键名。可能的值:true 和 false。
    这个参数是 PHP 4.0.3 中新加的。
    如果第二个参数指定为 true,则元素的键名保持不变,否则键名将丢失。
    array_rand() 从数组中随机选出一个或多个元素,并返回。 array_rand(array,number)
    number 可选。默认是 1。规定返回多少个随机的元素。
    第二个参数用来确定要选出几个元素。如果选出的元素不止一个,则返回包含随机键名的数组,否则返回该元素的键名。
    自 PHP 4.2.0 起,不再需要用 srand() 或 mt_srand() 函数给随机数发生器播种,现已被自动完成。
    shuffle() 把数组中的元素按随机顺序重新排列。 shuffle(array) 若成功,则返回 TRUE,否则返回 FALSE。
    本函数为数组中的单元赋予新的键名。这将删除原有的键名而不仅是重新排序。
    自 PHP 4.2.0 起,不再需要用 srand() 或 mt_srand() 函数给随机数发生器播种,现已被自动完成。
  • 相关阅读:
    终极解决VS2015 安装失败问题,如 安装包损坏或丢失
    解决vmware安装 win7 后 没有虚拟网卡驱动 不能上网的问题
    WIN10 64位下VS2015 MFC直接添加 halcon 12的CPP文件实现视觉检测
    linux操作系统-两台linux服务器SSH免密码登录
    linux操作系统-设置静态ip
    mysql学习-windows下绿色版mysql安装问题解决办法
    Svn Server 强制提交者输入注释信息
    spingmvc项目根路径访问不到
    python进阶12 Redis
    python进阶11 正则表达式
  • 原文地址:https://www.cnblogs.com/zy2012/p/2799685.html
Copyright © 2020-2023  润新知