array_key_exists(key,array);
作用:
array数组中是否存在key
返回:
bool存在返回true,不存在返回false
例子:数组中是否存在name
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
$arr
=
array
(
'name'
=>
'char'
,
'age'
=> 21,
'sex'
=>
'f'
);
if
(
array_key_exists
(
'name'
,
$arr
))
{
echo
'name存在'
;
}
else
{
echo
'name不存在'
;
}
输出结果:
name存在
|
array_keys(array, value, bool);
作用:
获取数组中的key值
参数:
array:数组
value:可选,指定数组中的value
bool:可选默认未false,与value值一起使用,默认不需要匹配value的类型,true会匹配类型。
返回值:
返回包含key的数组
例子:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
$arr
=
array
(
'name'
=>
'char'
,
'age'
=> 21,
'sex'
=>
'f'
);
$keys
=
array_keys
(
$arr
);
//获取数组的key 值
$key1
=
array_keys
(
$arr
,
'21'
);
//获取value为21的key值
$key2
=
array_keys
(
$arr
,
'21'
, true);
//获取value为21的key值,并且value为字符串
print_r(
$keys
);
print_r(
$key1
);
print_r(
$key2
);
输出结果:
Array
(
[0] => name
[1] => age
[2] => sex
)
Array
(
[0] => age
)
Array
(
)
|
array_map(string, array);
作用:
通过自定义函数,处理数组中的每个参数并返回
参数:
string:函数名
array:数组
返回值:
返回新的数组
例子:将数组的每个参数都乘2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
function
myFunction(
$v
)
{
return
$v
*2;
}
$arrOne
=
array
(
'a'
=>1,
'b'
=> 2 , 3, 4, 5);
$res
=
array_map
(
'myFunction'
,
$arrOne
);
print_r(
$res
);
输出结果:
Array
(
[a] => 2
[b] => 4
[0] => 6
[1] => 8
[2] => 10
)
|
array_merge(array1, array2);
作用:
合并一个或者多个数组
参数:
array1:合并的数组1
array2:合并的数组2
返回值:
合并后的数组
例子:
1
2
3
4
5
6
7
8
9
10
11
|
$arrOne
=
array
(
'a'
=>
'blue'
,
'b'
=>
'yellow'
);
$arrTwo
=
array
(
'a'
=>
'red'
,
'd'
=>
'purple'
);
$res
=
array_merge
(
$arrOne
,
$arrTwo
);
print_r(
$res
);
输出结果:
Array
(
[a] => red
[b] => yellow
[d] => purple
)
|
array_merge_recursive(array1, arrray2);
作用:
递归合并多个数组,与array_merge()区别,在处理同key名的值时不会覆盖
参数:
array1: 合并的数组1
aray2: 合并的数组2
返回值:
合并后的数组
例子:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
$arrOne
=
array
(
'a'
=>
'blue'
,
'b'
=>
'yellow'
);
$arrTwo
=
array
(
'a'
=>
'red'
,
'd'
=>
'purple'
);
$resRe
=
array_merge_recursive
(
$arrOne
,
$arrTwo
);
print_r(
$resRe
);
输出结果:
Array
(
[a] => Array
(
[0] => blue
[1] => red
)
[b] => yellow
[d] => purple
)
|