📅  最后修改于: 2023-12-03 14:45:28.017000             🧑  作者: Mango
在 PHP 中,array_keys()
和 array_key_exists()
都是处理数组中的键的函数。但是它们之间存在一些区别。
array_keys()
array_keys()
函数返回一个包含数组中所有键的新数组,它接受两个参数:要搜索的数组和可选参数 $search_value
,表示要查找的值。
/**
* 返回数组中所有键的新数组
*/
array_keys(array $array, mixed $search_value = null, bool $strict = false): array
如果省略 $search_value
参数,则返回原始数组的所有键。如果指定了 $search_value
,则将返回该值在原始数组中的所有键。
该函数的主要用途是获取关联数组中的所有键。
array_key_exists()
array_key_exists()
函数检查指定的键是否存在于数组中,它接受两个参数:要搜索的键和要搜索的数组。
/**
* 检查数组中是否存在指定的键
*/
array_key_exists(mixed $key, array $array): bool
如果在数组中找到了指定的键,则返回 true
,否则返回 false
。
该函数的主要用途是检查关联数组中是否存在指定的键。
区别 array_keys()
和 array_key_exists()
的最主要的不同点在于它们的返回值和用途。
array_keys()
返回一个包含所有键的新数组,并用于获取关联数组中的所有键。
array_key_exists()
检查指定的键是否存在于数组中,并用于检查关联数组中是否存在指定的键。
因此,如果您只需要检查某个键是否存在于关联数组中,请使用 array_key_exists()
函数。如果您需要获取关联数组中的所有键,则使用 array_keys()
函数。