一夢千年系列
array_intersect_key1
只比較鍵名計算陣列的交集
- 說明
array_intersect_key(array $array1, array $array2, array ...) : array
- 引數
array1
要檢查的陣列
array2
用於比較的陣列
...
更多使用者比較的陣列
- 返回值
返回一個陣列,鍵名存在於array1,同時也存在於其它使用者比較的陣列中
- 範例
$array1 = [
'name' => 'swk',
'age' => 22,
'sex' => 1
];
$array2 = [
'name' => 'zbj',
'age' => 23,
'height' => 176
];
$newArray = array_intersect_key($array1, $array2);
print_r($newArray);
以上範例會輸出
Array
(
[name] => swk
[age] => 22
)
- 特別注意
只是比較鍵名,不比較鍵值,所以上面的範例中,鍵名都有name、age,雖然鍵值不同,也算交集
一夢千年系列
array_intersect_ukey2
只比較鍵名計算交集,比較方式使用使用者自定義函式
- 說明
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_intersect3
計算陣列的交集,只比較鍵值,保留鍵名
- 說明
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_exists4
檢查陣列中是否有指定的鍵名
- 說明
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_first5
獲取陣列的第一個鍵名
- 說明
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