• « array_reverse
  • array_shift »
  • PHP Manual
  • 数组 函数
  • 在数组中搜索给定的值,如果成功则返回首个相应的键名

array_search

(PHP 4 >= 4.0.5, PHP 5, PHP 7)

array_search — 在数组中搜索给定的值,如果成功则返回首个相应的键名

说明

array_search ( mixed $needle , array $haystack [, bool $strict = false ] ) : mixed

大海捞针,在大海(haystack)中搜索针( needle 参数)。

参数

needle

搜索的值。

Note:

如果 needle 是字符串,则比较以区分大小写的方式进行。

haystack

这个数组。

strict

如果可选的第三个参数 strict 为 TRUE,则 array_search() 将在 haystack 中检查完全相同的元素。 这意味着同样严格比较 haystack 里 needle 的 类型,并且对象需是同一个实例。

返回值

如果找到了 needle 则返回它的键,否则返回 FALSE。

如果 needle 在 haystack 中出现不止一次,则返回第一个匹配的键。要返回所有匹配值的键,应该用 array_keys() 加上可选参数 search_value 来代替。

Warning

此函数可能返回布尔值 FALSE,但也可能返回等同于 FALSE 的非布尔值。请阅读 布尔类型章节以获取更多信息。应使用 === 运算符来测试此函数的返回值。

更新日志

版本 说明
5.3.0 As with all internal PHP functions as of 5.3.0, array_search() returns NULL if invalid parameters are passed to it.

范例

Example #1 array_search() 例子

<?php
$array 
= array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');

$key = array_search('green', $array); // $key = 2;
$key = array_search('red', $array);   // $key = 1;
?>

参见

  • array_keys() - 返回数组中部分的或所有的键名
  • array_values() - 返回数组中所有的值
  • array_key_exists() - 检查数组里是否有指定的键名或索引
  • in_array() - 检查数组中是否存在某个值