函数 in_array()

Posted liqingabc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了函数 in_array()相关的知识,希望对你有一定的参考价值。

第一个参数 needle 是规定要在数组中搜索的值,第二个参数 haystack 是规定要被搜索的数组,如果给定的值 needle 存在于数组中着返回 TRUE ,函数只有在元素存在于数组中且数据类型与给定值相同时才返回 TRUE ;如果没有在数组中找到参数,函数返回 FALSE 。要注意如果 needle 参数是字符串,且 strict 参数设置为 TRUE ,则搜索区分大小写。函数 in_array() 使用的代码如下:

<?php

        // in_array() 函数是简单使用形式

        Sos = array("Mac","NT","Irix","Linux") ;

        if in_array("Irix",Sos)) (                             //这个条件成立,字符串 Irix 在数组 Sos中

        echo " Got Irix ";

        )

 if in_array("msc",Sos)) (                             //这个条件失败,因为 in_array() 是区分大小写的

        echo " Got mac" ;

        )

       //in_array() 严格类型检查例子

       Sa = array(’1.10’,12.4,1.13)

      //第三个参数为 true ,所以字符串 ‘12.4’ 和浮点数 12.4 类型不同

  if ( in_array(‘12.4’ , Sa ,true)) (

      echo "  " ‘ 12 . 4 ’ , found with strict check  " ;

 if (in_array(1.13, Sa ,true)) (                    //这个条件成立,执行下面的语句

    echo " 1.13 found with strct check ” ;

//in_array()中还可以用数组当做第一个参数作为查询条件

Sa = array(array(‘ p ’ , ‘ h ’),array ( ‘ p ’ ,‘ r ’),‘ o ’) ;

 if ( in_array(array( ‘p ’ , ‘ h ’) , Sa)) (         //组数array( ‘p ’ , ‘ h ’)在数组Sa中存在

        echo " ‘ ph ’was found " ; 

)

if  (in_array(array( ‘ h ’ , ‘ p ’ ), Sa))  (      //数组array( ‘ h ’ , ‘ p ’ )在数组Sa中不存在

       echo " ‘ ph ’was found " ; 

)

 

以上是关于函数 in_array()的主要内容,如果未能解决你的问题,请参考以下文章

如何正确使用 in_array 函数?

转 PHP in_array() 函数

in_array 和 isset的效率

in_array 和 isset的效率

代码审计学习01-in_array() 函数缺陷

代码审计学习01-in_array() 函数缺陷