php语言中,在一个数组中搜索一个指定的键值是否存在,大家都经常使用 in_array() 函数,那么今天飞鸟慕鱼博客就来介绍一个与 in_array() 函数功能相似但返回值有点不同的函数 array_search()。
php array_search() 函数介绍
array_search():函数在数组中搜索指定的键值,有则返回对应的键名,否则返回false.
语法:
array_search(value,array,strict)
复制
参数:
value:必需,要搜索的值
array:必需,被搜索的数组
strict:可选,默认 false,如设置为 true,则搜索数据类型和值一致的元素
php array_search() 函数使用方法示例
1、在php数组中,搜索指定的元素
<?php
$arr = array('Name'=>'飞鸟慕鱼博客','Host'=>'http://feiniaomy.com');
//搜索一个存在的值
$key = array_search('飞鸟慕鱼博客',$arr);
var_dump($key);
//搜索一个不存在的值
$key2 = array_search('baidu.com',$arr);
var_dump($key2);
?>
复制
运行结果:
string(4) "Name"
bool(false)
复制
说明:
(1),如果php数组中存在被搜索的值,则返回对应的键名
(2)、如果搜索的元素不存在,array_search() 返回 false
2、array_search() 数据类型精确匹配查找
把 array_search() 函数的第三个参数,设置为 true,则在php数组中搜索指定的键值时,会配置值的数据类型,可以达到精确查找的目的
例:
php语言代码:
<?php
$arr = array('a'=>'1','b'=>'2','c'=>'3');
//搜索字符串类型的 2
$key1 = array_search('2',$arr,true);
var_dump($key1);
//搜索数组类型的 2
$key2 = array_search(2,$arr,true);
var_dump($key2);
?>
复制
运行结果:
string(1) "b"
bool(false)
复制
补充说明:
array_search() 与 in_array() 两个函数,虽然在使用上与功能上有很大的相似之处,但它们之间还是有些区别的。
1、array_search()函数,在数组中搜索到指定的键值后,会返回相对应的键名
2、in_array()函数,在数组中搜索到指定的键值后,会返回 TRUE
3、array_search() 与 in_array() ,在搜索不到指定键值时,都会返回 FALSE
4、in_array() 使用参考:https://www.feiniaomy.com/post/353.html
如果文章或资源对您有帮助,欢迎打赏作者。一路走来,感谢有您!
txttool.com 说一段 esp56物联 查询128 IP查询