php array_keys
介绍
array_keys() 函数用于获取数组中所有键名或键名的子集。
array_keys() 函数返回包含数组中所有键名的新数组。如果提供了搜索值,则只返回键名的子集。
语法
array_keys(array,value,strict)
array:必需。规定要搜索的数组。
value:可选。规定要搜索的值。可以是数组、字符串等。
strict:可选。如果该参数的值为 true 则类型也必须匹配。
返回值
array_keys() 函数返回一个带有数组中所有键名的新的数组。如果 search_value 参数被提供,则只返回键值匹配到的键名子集数组。
使用示例
示例1:获取所有键名
代码:
$arr=array("Volvo"=>"XC90","BMW"=>"X5","Toyota"=>"Highlander"); print_r(array_keys($arr));
结果:
Array ( [0] => Volvo [1] => BMW [2] => Toyota )
示例2:获取键值为'X5'的键名
代码:
$arr=array("Volvo"=>"XC90","BMW"=>"X5","Toyota"=>"Highlander"); print_r(array_keys($arr,"X5"));
结果:
Array ( [0] => BMW )
应用场景
array_keys() 函数可以很方便地用于遍历数组。在使用 foreach 循环遍历数组时,可以将 array_keys() 用于获取数组的所有键名。
另外还可以将 array_keys() 用于数组的交集和并集运算,或者查找含有指定值的键名。如果需要获取一个数组中的所有键名,而不关心该键名所对应的值,那么 array_keys() 函数就是一种非常简单的解决方案。
注意事项
如果提供给 array_keys() 函数的数组是多维数组,返回的键名数组将仅包含最外层数组的键名,而不能获取所有的键名。
array_keys() 函数返回的键名数组的顺序,与原数组中键名的顺序相同。如果原数组中存在重复的键名,array_keys() 函数也会将其重复的键名全部返回。
array_keys() 函数的速度非常快,因此可以放心大胆地使用它。