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)
沈唁志|一个PHPer的成长之路!
原创文章采用CC BY-NC-SA 4.0协议进行许可,转载请注明:转载自:PHP中系统函数in_array()使用