一梦千年系列php
只比较键名计算数组的交集数组
array_intersect_key(array $array1, array $array2, array ...) : array
复制代码
array1
要检查的数组markdown
array2
用于比较的数组函数
...
更多用户比较的数组spa
返回一个数组,键名存在于array1,同时也存在于其它用户比较的数组中code
$array1 = [
'name' => 'swk',
'age' => 22,
'sex' => 1
];
$array2 = [
'name' => 'zbj',
'age' => 23,
'height' => 176
];
$newArray = array_intersect_key($array1, $array2);
print_r($newArray);
复制代码
以上范例会输出orm
Array
(
[name] => swk
[age] => 22
)
复制代码
只是比较键名,不比较键值,因此上面的范例中,键名都有name、age,虽然键值不一样,也算交集对象
一梦千年系列string
只比较键名计算交集,比较方式使用用户自定义函数it
array_intersect_ukey(array $array1, array $array2, array ..., callback $func) : array
复制代码
array1
要检查的数组
array2
用于比较的数组
...
更多用户比较的数组
func
用户自定义比较的函数
返回一个数组,键名即存在于array1中,也存在于其它数组中,键名的比较方式是用户自定义函数
$array1 = [
'name' => 'swk',
'age' => 22,
'sex' => 1
];
$array2 = [
'name' => 'zbj',
'age' => 23,
'sex' => 2
];
function func($a, $b) {
return 0;
}
$newArray = array_intersect_ukey($array1, $array2, 'func');
print_r($newArray);
复制代码
以上范例输出
Array
(
[name] => swk
[age] => 22
[sex] => 1
)
复制代码
只比较键名,使用用户自定义的函数比较键名
一梦千年系列
计算数组的交集,只比较键值,保留键名
array_intersect(array $array1, array $array2, array ...) : array
复制代码
array1
要检查的数组
array2
用于比较的数组
...
更多用于比较的数组
返回一个数组,键值相同的交集数组
$array1 = [
'name' => 'swk',
'age' => 22,
'sex' => 1
];
$array2 = [
'nickname' => 'swk',
'age' => 23,
'sex' => 1
];
$newArray = array_intersect($array1, $array2);
print_r($newArray);
复制代码
以上范例输出
Array
(
[name] => swk
[sex] => 1
)
复制代码
计算交集只比较键值
一梦千年系列
检查数组中是否有指定的键名
array_key_exist(mixed $key, array $array) : bool
复制代码
数组array中有键名key时返回true,不然返回false
key
要检查的键名
array
要检查的数组
返回布尔值,检查到键名返回true,不然返回false
$array = [
'name' => 'swk',
'age' => 22,
'sex' => 1
];
$key = 'name';
$res = array_key_exists($key, $array);
var_dump($res);
复制代码
以上范例输出
bool(true)
复制代码
虽说第二个数组参数也能够传对象,可是不建议,若是判断对象中是否有属性,则使用property_exists
一梦千年系列
获取数组的第一个键名
array_key_first(array $array) : mixed
复制代码
array
要操做的数组
返回一个有效的键名,若是是空数组,则返回null
$array = [
'name' => 'swk',
'age' => 22,
'sex' => 1
];
$res = array_key_first($array);
var_dump($res);
复制代码
以上范例输出
string(4) "name"
复制代码
获取数组的第一个键名,若是数组为空,则返回null