在PHP中,数组函数 array_search () 用来在数组中搜索给定的值,如果成功则返回首个相应的键名。
函数语法:
array_search ( mixed $needle , array $haystack [, bool $strict = false ] ) : mixed
函数参数说明:
参数 | 描述 |
---|---|
needle | 必需。规定在数组中搜索的键值。 |
haystack | 必需。规定被搜索的数组。 |
strict | 可选。如果该参数被设置为 TRUE,则函数在数组中搜索数据类型和值都一致的元素。可能的值:
|
array_search() 函数用来在数组中搜索给定的值,如果找到了 needle 则返回它的键,否则返回 FALSE。如果 needle 在 haystack 中出现不止一次,则返回第一个匹配的键。
要返回所有匹配值的键,应该用 array_keys() 加上可选参数 search_value 来代替。
举例1,在数组中搜索给定的值(strict为默认false):
<?php // 定义数组 $arr1 = ['a', 'b' => '10', 2 => 'c']; // 搜索值,并返回第一个匹配到的值对应的键 $res = array_search(10, $arr1); var_dump($res);
以上代码输出如下:
string 'b' (length=1)
举例2,在数组中搜索给定的值(strict为true):
<?php // 定义数组 $arr1 = ['a', 'b' => '10', 2 => 'c']; // 搜索值,并返回第一个匹配到的值对应的键 $res = array_search(10, $arr1, true); var_dump($res);
以上代码输出如下:
boolean false