php中可以进行数组搜索。php中提供了两种数组搜索函数:1、array_search(),可以在数组中搜索给定的值并返回对应的键名,语法“array_search(搜索值,数组,搜索时是否比较类型)”,返回值为字符串类型;2、array_keys(),用于在数组中搜索给定的值并返回对应的键名,语法“array_keys(数组,搜索值,是否比较类型)”,返回值为数组类型。

本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑

php中可以进行数组搜索。

php中提供了两种数组搜索函数:

  • array_search()

  • array_keys()

这两种函数都可以在数组中搜索给定的值并返回对应的键名(下标)。区别是:array_search()的返回值为字符串类型,而array_keys()的返回值为数组类型。

1、使用array_search()进行数组搜索

array_search() 函数在数组中搜索某个键值,并返回对应的键名。

array_search(value,array,strict)
参数描述
value必需。规定在数组中搜索的键值。
array必需。规定被搜索的数组。
strict可选。如果该参数被设置为 TRUE,则函数在数组中搜索数据类型和值都一致的元素。可能的值:
  • true
  • false - 默认
如果设置为 true,则在数组中检查给定值的类型,数字 5 和字符串 5 是不同的(参见实例 2)。

示例:在数组中搜索键值 "red",并返回它的键名

<?php
header("Content-type:text/html;charset=utf-8");
$a=array("a"=>"red","b"=>"green","c"=>"blue");
var_dump($a);
echo array_search("red",$a);
?>

1.png

2、使用array_keys()进行数组搜索

array_key() 函数可以获取数组中的部分或所有键名。

array_keys(array,value,strict)

当设置了value参数才可进行数组搜索,

参数描述
array必需。规定数组。
value可选。您可以指定键值,然后只有该键值对应的键名会被返回。
strict可选。与 value 参数一起使用。可能的值:
  • true - 返回带有指定键值的键名。依赖类型,数字 5 与字符串 "5" 是不同的。
  • false - 默认值。不依赖类型,数字 5 与字符串 "5" 是相同的。

示例:在数组中搜索键值 "Highlander",并返回它的键名

<?php
header("Content-type:text/html;charset=utf-8");
$a=array("Volvo"=>"XC90","BMW"=>"X5","Toyota"=>"Highlander");
var_dump($a);
var_dump(array_keys($a,"Highlander"));
?>

2.png


php进行数组搜索可以吗