array_search函数语法:

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

在 haystack 中搜索 needle 参数。

array_search() 函数与 in_array() 一样,在数组中查找一个键值。如果找到了该值,匹配元素的键名会被返回。如果没找到,则返回 false。

在 PHP 4.2.0 之前,函数在失败时返回 null 而不是 false。

如果第三个参数 strict 被指定为 true,则只有在数据类型和值都一致时才返回相应元素的键名。

参数介绍:

参数 描述
needle 必需。搜索的值。如果 needle 是字符串,则比较以区分大小写的方式进行。
haystack 必需。规定被搜索的数组。
strict

可选。可能的值:

  • true
  • false - 默认

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

返回值

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

注:

  • 如果 needle 在 haystack 中出现不止一次,则返回第一个匹配的键。要返回所有匹配值的键,应该用 array_keys() 加上可选参数 search_value 来代替。 
  • 此函数可能返回布尔值 FALSE,但也可能返回等同于 FALSE 的非布尔值。请阅读布尔类型章节以获取更多信息。应使用 === 运算符来测试此函数的返回值。

实例:

<?php
$array = array(0 => \'php\', 1 => \'mysql\', 2 => \'java\', 3 => \'html\');

$key = array_search(\'mysql\', $array); // $key = 1;
$key = array_search(\'html\', $array);   // $key = 3;
?> 

在线运行

收藏 打印