您好,登錄后才能下訂單哦!
這篇文章主要講解了“php如何檢測數組中是否包含某字符串”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“php如何檢測數組中是否包含某字符串”吧!
兩種檢測方法:1、使用in_array函數檢測,可以查找數組中是否包含指定類型的值,語法“in_array('字符串',數組,true)”,如果返回值為TRUE則包含,反之則不包含。2、使用array_search()函數檢測,可以查找數組中是否包含指定類型的值,語法“array_search('字符串',數組,true)”,如果返回對應鍵名則包含,如果返回FALSE則不包含。
本教程操作環境:windows7系統、PHP8.1版、DELL G3電腦
php檢測數組中是否包含某字符串有兩種方法:
使用in_array函數檢測
使用array_search()函數檢測
方法1:使用in_array函數檢測
in_array() 函數可以查找數組中是否包含某個值,如果存在則返回 TRUE,不存在則返回 FALSE。
in_array($needle, $array[, $strict = FALSE])
參數說明如下:
$needle:為待搜索的值,如果 $needle 是字符串,則在比較時區分大小寫;
$array:為待搜索的數組;
$strict:為可選參數,默認為 FALSE。
如果 $strict 為空或者 FALSE,則 in_array() 函數只會檢查 $needle 的值是否和 $array 中的值相等;
如果 $strict 的值為 TRUE,in_array() 函數除了會檢查 $needle 和 $array 中的值之外,還會比較它們的類型是否相等。
想要使用in_array函數檢測數組中是否包含某字符串,只需要將第一個參數設置為指定字符串,第三個參數設置為TRUE(用于確保元素值和搜索值的類型一致)
<?php header("Content-type:text/html;charset=utf-8"); $array = array( 'name' =>'億速云', 'url' =>'http://www.mlszssj.com/', 'title' =>'PHP教程', 'pid' =>1234 ); var_dump($array); if(in_array('PHP教程', $array, true)){ echo '數組中包含字符串“PHP教程”<br><br>'; }else{ echo '數組中不包含字符串“PHP教程”<br><br>'; } if(in_array('1234', $array, true)){ echo '數組中包含字符串“1234”<br><br>'; }else{ echo '數組中不包含字符串“1234”<br><br>'; } ?>
方法2:使用array_search()函數檢測
array_search() 函數可以在數組中搜索給定的值,如果成功則返回首個相應的鍵名,該函數的語法格式如下:
array_search($needle, $haystack[, $strict = false])
參數說明如下:
$needle:為要搜索的值,如果 $needle 為字符串類型,則在搜索時區分大小寫;
$haystack:為一個數組;
$strict:可選參數,可以為空,默認為 False。
如果 $strict 為 False,則 array_search() 在 $haystack 中搜索 $needle 時僅會比較值,不比較類型。
如果 $strict 為 True,則 array_search() 在 $haystack 中搜索 $needle 時會同時比較值和類型。
array_search() 函數如果找到了 $needle 則返回它的鍵,否則返回 False。
<?php header("Content-type:text/html;charset=utf-8"); $array = array( 'name' =>'億速云', 'url' =>'http://www.mlszssj.com/', 'title' =>'PHP教程', 'pid' =>1234, 'level' => 1111, ); var_dump($array); var_dump(array_search('1234', $array, true)); var_dump(array_search('PHP教程', $array)); var_dump(array_search('1111', $array, true)); var_dump(array_search(1111, $array, true)); ?>
說明:如果 $needle 在 $haystack 中出現不止一次,則僅會返回第一個匹配的鍵。若要返回所有匹配值的鍵,應該用 array_keys() 函數來代替。
感謝各位的閱讀,以上就是“php如何檢測數組中是否包含某字符串”的內容了,經過本文的學習后,相信大家對php如何檢測數組中是否包含某字符串這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。