PHP数组函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP数组函数相关的知识,希望对你有一定的参考价值。

1. array_filter() 函数用回调函数过滤数组中的值。

  array_filter(array,callbackfunction);

该函数把输入数组中的每个键值传给回调函数。如果回调函数返回 true,则把输入数组中的当前键值返回结果数组中。数组键名保持不变。

function test_odd($var)
{
return($var & 1);
}

$a1=array("a","b",2,3,4);
print_r(array_filter($a1,"test_odd"));

2. array_flip() 函数用于反转/交换数组中所有的键名以及它们关联的键值

array_flip(array);

array_flip() 函数返回一个反转后的数组,如果同一值出现了多次,则最后一个键名将作为它的值,所有其他的键名都将丢失。

如果原数组中的值的数据类型不是字符串或整数,函数将报错。

3. array_intersect() 函数用于比较两个(或更多个)数组的键值,并返回交集。

array_intersect(array1,array2,array3...);

返回交集数组,该数组包括了所有在被比较的数组(array1)中,同时也在任何其他参数数组(array2 或 array3 等等)中的键值。

4. array_intersect_assoc() 函数用于比较两个(或更多个)数组的键名和键值,并返回交集

array_intersect_assoc(array1,array2,array3...)

该函数比较两个(或更多个)数组的键名和键值,并返回交集数组,该数组包括了所有在被比较的数组(array1)中,同时也在任何其他参数数组(array2 或 array3 等等)中的键名和键值。

5. array_intersect_key() 函数用于比较两个(或更多个)数组的键名 ,并返回交集

array_intersect_key(array1,array2,array3...)

该函数比较两个(或更多个)数组的键名,并返回交集数组,该数组包括了所有在被比较的数组(array1)中,同时也在任何其他参数数组(array2 或 array3 等等)中的键名。

array_intersect_key() 函数使用键名比较计算数组的交集。

array_intersect_key() 返回一个数组,该数组包含了所有出现在被比较的数组中并同时出现在所有其它参数数组中的键名的值。

注释:仅有键名用于比较。

6. array_intersect_uassoc() 函数用于比较两个(或更多个)数组的键名和键值 ,并返回交集

array_intersect_uassoc(array1,array2,array3...,myfunction)

7. array_intersect_ukey() 函数用于比较两个(或更多个)数组的键名 ,并返回交集

array_intersect_ukey(array1,array2,array3...,myfunction)

8. array_key_exists() 函数检查某个数组中是否存在指定的键名,如果键名存在则返回 true,如果键名不存在则返回 false

array_key_exists(key,array)

9. array_keys() 函数返回包含数组中所有键名的一个新数组

array_keys(array,value,strict)

如果提供了第二个参数,则只返回键值为该值的键名。

如果 strict 参数指定为 true,则 php 会使用全等比较 (===) 来严格检查键值的数据类型。

10. array_map() 函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新值的数组。

回调函数接受的参数数目应该和传递给 array_map() 函数的数组数目一致。

array_map(myfunction,array1,array2,array3...)
function myfunction($v)
{
  return($v*$v);
}

$a=array(1,2,3,4,5);
print_r(array_map("myfunction",$a));

以上是关于PHP数组函数的主要内容,如果未能解决你的问题,请参考以下文章

超级有用的9个PHP代码片段

PHP项目开发经验整理

使 PHP 代码更加简洁的几个小技巧

几个关于js数组方法reduce的经典片段

21个常用代码片段

js简洁代码片段