PHP开发过程中数组汇总 [ 持续更新系列 ]
开发过程中经常会使用到数组函数,故特地总结出来,自己熟悉,同时供大家参考!(实例部分会抽空尽快完成)
一、目录
- array_merge(); 合并数组
- array_keys();
- array_filter();
- in_array();
- array_shift();
- array_map();
- array_diff();
- array_values();
- array_unique();
- array_flip()
- array_multisort()
- array_column()
- array_intersect()
- array_key_exists()
- array_pad()
- array_pop()
- array_product()
- array_sum()
- array_push()
- array_search()
- array_reduce()
二、实例
1. array_merge();
合并数组
<?php
$a1=array("red","green");
$a2=array("blue","yellow");
print_r(array_merge($a1,$a2));
Array
(
[0] => red
[1] => green
[2] => blue
[3] => yellow
)
2. array_keys();
2.1、【第一参数】【必选】取键名做值
返回包含数组中所有键名的一个新数组:
$a=array(
"name"=>"zhangsan",
"age"=>"18",
"h"=>"178");
print_r(array_keys($a));
Array
(
[0] => name
[1] => age
[2] => h
)
2.2、【第二参数】【可选】,指定value的key
取指定value的key,作为返回array的value
$a=array(
"name"=>"zhangsan",
"age"=>"18",
"h"=>"178");
print_r(array_keys($a,"178"));
Array
(
[0] => h
)
2.3、【第三参数】【可选】 返回带有指定键值的键名
true为严格类型
$a=array(10,20,30,"10");
print_r(array_keys($a,"10",true));
//返回结果
Array
(
[0] => 3
)
$a=array(10,20,30,"10");
print_r(array_keys($a,"10",true));
//返回结果
Array
(
[0] => 0
[1] => 3
)
3. array_filter();
用回调函数过滤数组中的值
4. in_array();
参数 | 是否可选 | 描述 |
---|---|---|
value | 必选 | 需要搜素的键值。 |
array | 必选 | 规定被搜索的数组 |
strict | 可选 | 如果设置为 true,则在数组中检查给定值的类型,默认是false |
搜索数组中是否存在指定的值。
- 如果 search 参数是字符串且 type 参数被设置为 TRUE,则搜索区分大小写。
- 如果设置为 true,则在数组中检查给定值的类型
示例部分
$array = array(
'egg' => true,
'cheese' => false,
'hair' => 765,
'goblins' => null,
'ogres' => 'no ogres allowed in this array'
);
var_dump(in_array('wo shi sui bian shuru de ,danshi jieguo haishi true', $array));exit;
var_dump(in_array('null', $array)); //true
var_dump(in_array(null, $array,true)); //false
var_dump(in_array('', $array)); //true
var_dump(in_array('', $array,true)); //false
5. array_shift();
删除数组中的第一个元素(red),并返回被删除元素的值:
<?php
$a=array("a"=>"red","b"=>"green","c"=>"blue");
echo array_shift($a);
print_r ($a);
?>
6. array_map();
array_map() 函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新值的数组。
回调函数接受的参数数目应该和传递给 array_map() 函数的数组数目一致。
提示:您可以向函数输入一个或者多个数组。
<?php
function myfunction($v)
{
return($v*$v);
}
$a=array(1,2,3,4,5);
print_r(array_map("myfunction",$a));
?>