您的位置:首页 > 编程语言 > PHP开发

PHP的in_array() 函数使用详解

2017-04-28 16:03 766 查看


实例

在数组中搜索值 "Glenn" ,并输出一些文本:
<?php
$people = array("Bill", "Steve", "Mark", "David");

if ([code]in_array("Mark", $people)
)
{
echo "匹配已找到";
}
else
{
echo "匹配未找到";
}
?>
[/code]

运行实例


定义和用法

in_array() 函数搜索数组中是否存在指定的值。

注释:如果 search 参数是字符串且 type 参数被设置为 TRUE,则搜索区分大小写。


语法

in_array(search,array,type)

参数描述
search必需。规定要在数组搜索的值。
array必需。规定要搜索的数组。
type可选。如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同。

说明

如果给定的值 search 存在于数组 array 中则返回 true。如果第三个参数设置为 true,函数只有在元素存在于数组中且数据类型与给定值相同时才返回 true。

如果没有在数组中找到参数,函数返回 false。

注释:如果 search 参数是字符串,且 type 参数设置为 true,则搜索区分大小写。


技术细节

返回值:如果在数组中找到值则返回 TRUE,否则返回 FALSE。
PHP 版本:4+
Changelog:自 PHP 4.2 起,search 参数现在也可能是数组。


更多实例

例子 1

使用所有参数:
<?php
$people = array("Bill", "Steve", "Mark", "David");

if ([code]in_array("23", $people, TRUE)
)
{
echo "匹配已找到<br>";
}
else
{
echo "匹配未找到<br>";
}
if (in_array("Mark",$people, TRUE))
{
echo "匹配已找到<br>";
}
else
{
echo "匹配未找到<br>";
}

if (in_array(23,$people, TRUE))
{
echo "匹配已找到<br>";
}
else
{
echo "匹配未找到<br>";
}
?>[/code]

下面对in_array()使用详解,就普通使用、使用第三个参数、克隆对象、多维数组等给出一些例子

in_array(value,array,type)
return boolen
参数说明:
value :要搜索的值
array : 被搜索的数组
type : 类型,true全等 ,false非全等(默认)

示例一:普通使用代码:$str = 1;
$arr = array(1,3,5,7,9);
$boolvalue = in_array($str,$arr);
var_dump($boolvalue);执行结果:bool(true) 

实例二:使用第三个参数
非全等
代码:$str = '1';
$arr = array(1,3,5,7,9);
$boolvalue = in_array($str,$arr,false);
var_dump($boolvalue);执行结果:bool(true) 全等
代码:$str = '1';
$arr = array(1,3,5,7,9);
$boolvalue = in_array($str,$arr,true);
var_dump($boolvalue);

执行结果:bool(false) 

实例三:克隆对象
代码:class a {
    public $a = 1;  
    public function fun(){
        return $this->a; 
    }
}
class b {
    public $a = 2;  
    public function fun(){
        return $this->a; 
    }
}
$a = new a();
$b = new b();
$c = clone $a;
$arr = array($a,$b);
$boolvalue = in_array($c,$arr,false);
var_dump($boolvalue);执行结果:bool(true) 代码:class a {
    public $a = 1;  
    public function fun(){
        return $this->a; 
    }
}
class b {
    public $a = 2;  
    public function fun(){
        return $this->a; 
    }
}
$a = new a();
$b = new b();
$c = clone $a;
$arr = array($a,$b);
$boolvalue = in_array($c,$arr,true);
var_dump($boolvalue);执行结果:bool(false) 示例四:多维数组
代码:$str = 10;
$arr = array(
    array(1,2,3,4),
    array(5,6,7,8,9),
    10
);
$boolvalue = in_array($str,$arr);
var_dump($boolvalue);执行结果:bool(true)代码:$str = 10;
$arr = array(
    array(1,2,3,4),
    array(5,6,7,8,9,10),
);
$boolvalue = in_array($str,$arr);
var_dump($boolvalue);执行结果:bool(false) 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php 函数