PHP中系统函数in_array()使用

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)

发表评论

发表评论

*

沙发空缺中,还不快抢~