array_search 返回指定值的key
array_search(mixed $needle
, array $haystack
, bool $strict
= false): mixed
参数介绍
needle
- 搜索的值。
注意:
- 如果
needle
是字符串,则比较以区分大小写的方式进行。
haystack
- 这个数组。
strict
- 如果可选的第三个参数
strict
为true
,则 array_search() 将在haystack
中检查完全相同的元素。 这意味着同样严格比较haystack
里needle
的 类型,并且对象需是同一个实例。
1、示例查询指定元素的key
<?php $array = array(0 => 'blue', 1 => 'red', '2' => 'green', 3 => 'red'); echo array_search('green', $array) . "\n"; // $key = 2; echo array_search('red', $array); // $key = 1; ?>
输出:
2 1
2、强制校验大小写测试
<?php $array = array(0 => 'blue', 1 => 'red', '2' => 'Green', 3 => 'red'); echo "key为:" . array_search('green', $array, true) . "\n"; // $key = 2; // $key = 1; ?>
输出:搜索不到则返回空
key为:
3、搜索到多个key,返回第一个key,返回多个key使用array_keys
<?php $array = array(0 => 'blue', 1 => 'red', '2' => 'green', 'green' => 'green'); echo "key为:" . array_search('green', $array, true) . "\n"; // $key = 2; // $key = 1; ?>
输出:
key为:2