PHP的in_array() 函数使用详解

实例

在数组中搜索值 "Glenn" ,并输出一些文本:

<?php
$people = array("Bill", "Steve", "Mark", "David");

if (in_array("Mark", $people))
  {
  echo "匹配已找到";
  }
else
  {
  echo "匹配未找到";
  }
?>

运行实例

定义和用法

in_array() 函数搜索数组中是否存在指定的值。

注释:如果 search 参数是字符串且 type 参数被设置为 TRUE,则搜索区分大小写。

语法

in_array(search,array,type)
参数 描述
search 必需。规定要在数组搜索的值。
array 必需。规定要搜索的数组。
type 可选。如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同。

说明

如果给定的值 search 存在于数组 array 中则返回 true。如果第三个参数设置为 true,函数只有在元素存在于数组中且数据类型与给定值相同时才返回 true。

如果没有在数组中找到参数,函数返回 false。

注释:如果 search 参数是字符串,且 type 参数设置为 true,则搜索区分大小写。

技术细节

返回值: 如果在数组中找到值则返回 TRUE,否则返回 FALSE。
PHP 版本: 4+
Changelog: 自 PHP 4.2 起,search 参数现在也可能是数组。

更多实例

例子 1

使用所有参数:

<?php
$people = array("Bill", "Steve", "Mark", "David");

if (in_array("23", $people, TRUE))
  {
  echo "匹配已找到<br>";
  }
else
  {
  echo "匹配未找到<br>";
  }
if (in_array("Mark",$people, TRUE))
  {
  echo "匹配已找到<br>";
  }
else
  {
  echo "匹配未找到<br>";
  }

if (in_array(23,$people, TRUE))
  {
  echo "匹配已找到<br>";
  }
else
  {
  echo "匹配未找到<br>";
  }
?>
下面对in_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) 
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值