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)