首頁 >後端開發 >php教程 >php中in_array函數的用法

php中in_array函數的用法

怪我咯
怪我咯原創
2017-07-16 14:49:441936瀏覽

in_array() 函數搜尋陣列中是否存在指定的值。如果在陣列中找到值則傳回 TRUE,否則傳回 FALSE。

這篇文章主要介紹了php中in_array函數用法,對in_array函數參數匹配的用法進行了較為深入的探究,有助於較為全面的理解in_array函數的用法,需要的朋友可以參考下

$a=array("1,2,3","4"); 
if(in_array(1,$a)){ 
 
  echo "条件成立"; 
}

這個條件果然是成立的,按照我的思考邏輯上邊的那個條件只有在參數1的值為“1 ,2,3」和為4的時候才成立,但是奇怪的是他居然成立了,隨即測試瞭如下情況,代碼如下:

$a=array("a,2,3","4"); 
 
if(in_array('a',$a)){ 
 
  echo "条件不成立"; 
 
}

這個是不成立的,在第一個測試案例下,如果把參數1寫成'1'條件也是不成立的,得出的結論是:

在PHP中如果第一個參數為數字-不加引號的數字啊,第二個陣列參數包含有以該數字開頭的字串的話不管第一個參數是否為第二個參數的完整元素,都會傳回真值,也就是說,in_array函數並非每次都是按照我的思考邏輯進行整個元素匹配,還是我對資料類型認識的不夠清楚呢?

同時,也發現如果你的陣列的第一個元素為0的時候,也會出現問題,看如下情況,程式碼如下:

$a=array(0,"m"); 
if(in_array('mc6',$a)) 
{ 
 echo "====="; 
}

以上是php中in_array函數的用法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn