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)
更多PHP函数in_array()使用详解相关文章请关注PHP中文网!