PHP in_array() 函数

本文介绍了PHP中的in_array函数的使用方法,包括如何检查数组中是否存在特定元素及其类型匹配情况,并通过多个示例展示了其具体应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PHP in_array(); :

  in_array(VALUE,ARRAY,[TYPE]);

  VALUE  : 要找的字符或数值

  ARRAY :来自的数组;

  TYPE  :可选项 如为 TRUE 那么 将检查 value and array 的类型是否匹配

 例一:

Code:
  1.  $array=array("home","introd","news","contact");  
  2.   
  3.  if( in_array("news",$array) ) {  
  4.       echo "YES";      
  5. }else{  
  6.      echo "NO";  
  7. }  
  8. // 输出结果为: YES  

 

例子 2

 

 

<?php
$people = array("Peter", "Joe", "Glenn", "Cleveland", 23);

if (in_array("23",$people, TRUE))
{
  echo "Match found<br />";
}
else
{
  echo "Match not found<br />";
}
if(in_array("Glenn",$people, TRUE))
{
  echo "Match found<br />";
}
else
{
  echo "Match not found<br />";
}
if(in_array(23,$people, TRUE))
{
  echo "Match found<br />";
}
else
{
  echo "Match not found<br />";
}
?>

输出:

Match not found
Match found
Match found
 
以上是W3CSCHOOL的介绍,下面是PHP5.3手册的介绍,感觉还是手册介绍的详细些:
   

in_array

(PHP 4, PHP 5)

in_array检查数组中是否存在某个值

说明

bool in_array ( mixed $needle , array $haystack [, bool $strict ] )

haystack 中搜索 needle ,如果找到则返回 TRUE,否则返回 FALSE

如果第三个参数 strict 的值为 TRUEin_array() 函数还会检查 needle类型是否和 haystack 中的相同。

Note: 如果 needle 是字符串,则比较是区分大小写的。

Note: 在 PHP 版本 4.2.0 之前,needle 不允许是一个数组。

 

Example #1 in_array() 例子

<?php
$os
= array("Mac", "NT", "Irix", "Linux"
);
if (
in_array("Irix", $os
)) {
     echo
"Got Irix"
;
}
if (
in_array("mac", $os
)) {
     echo
"Got mac"
;
}
?>

第二个条件失败,因为 in_array() 是区分大小写的,所以以上程序显示为:

Got Irix

 


 



Example #2 in_array() 严格类型检查例子



<?php

$a
= array('1.10', 12.4, 1.13
);



if (
in_array('12.4', $a, true
)) {

     echo
"'12.4' found with strict check/n"
;

}

if (
in_array(1.13, $a, true
)) {

     echo
"1.13 found with strict check/n"
;

}

?>


上例将输出:




1.13 found with strict check

 


 



Example #3 in_array() 中用数组作为 needle



<?php

$a
= array(array('p', 'h'), array('p', 'r'), 'o'
);



if (
in_array(array('p', 'h'), $a
)) {

     echo
"'ph' was found/n"
;

}

if (
in_array(array('f', 'i'), $a
)) {

     echo
"'fi' was found/n"
;

}

if (
in_array('o', $a
)) {

     echo
"'o' was found/n"
;

}

?>


上例将输出:




'ph' was found
  'o' was found

 


参见 array_search()array_key_exists()isset()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值