PHP array_search 数组函数

  • 定义和用法

    array_search - 在数组中搜索给定的值,如果成功则返回首个相应的键名
  • 版本支持

    PHP4 PHP5 PHP7
    V4.0.5(含)+支持 支持 支持
    V5.3.0 更新与5.3.0中的所有内部PHP函数一样,如果向其传递无效参数,array_search()将返回NULL。
  • 语法

    array_search ( mixed $needle , array $haystack [, bool $strict = false ] )   
    
    大海捞针,在大海(haystack)中搜索针( needle 参数)。
  • 参数

    参数 必需的 描述
    needle 搜索的值。如果 needle 是字符串,则比较以区分大小写的方式进行。
    haystack 要搜索的数组。
    strict 如果可选的第三个参数 strict 为 TRUE,则 array_search() 将在 haystack 中检查完全相同的元素。 这意味着同样严格比较 haystack 里 needle 的 类型,并且对象需是同一个实例。
  • 返回值

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

    <?php
    $array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');
    
    $key1 = array_search('green', $array); // $key = 2;
    $key2 = array_search('red', $array);   // $key = 1;
    var_dump($key1);
    print '<br/>';
    var_dump($key2);
    ?>
    
    尝试一下
  • 相关函数

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