PHP有一个系统函数is_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)