您好,登錄后才能下訂單哦!
這篇文章主要講解了“php如何檢測(cè)數(shù)組中是否有指定值”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“php如何檢測(cè)數(shù)組中是否有指定值”吧!
3種方法:1、用foreach語(yǔ)句和“==”運(yùn)算符,語(yǔ)法“foreach($arr as $v){if($v==指定值){//存在}}”。2、用in_array(),語(yǔ)法“in_array("指定值",數(shù)組)”,返回TRUE則存在,反之不存在。3、用array_search(),語(yǔ)法“array_search("指定值",數(shù)組)”,如果值存在則返回對(duì)應(yīng)鍵名,反之返回false。
本教程操作環(huán)境:windows7系統(tǒng)、PHP8.1版、DELL G3電腦
php檢測(cè)數(shù)組中是否有指定值的三種方法
方法1:使用foreach語(yǔ)句和“==”運(yùn)算符
foreach語(yǔ)句循環(huán)遍歷數(shù)組
在循環(huán)體中,使用“==”運(yùn)算符比較當(dāng)前元素是否等于指定值
<?php header('content-type:text/html;charset=utf-8'); $arr = array(1,"2",2,3,"4",4,5); foreach($arr as $v){ if($v==1){ echo "指定值存在<br>"; break; } } ?>
優(yōu)化一下:
<?php header('content-type:text/html;charset=utf-8'); function f($arr,$val){ $con=0; foreach($arr as $v){ if($v==$val){ $con=1; break; }else{ $con=0; } } if($con==1){ echo "指定值 $val 存在<br>"; }else{ echo "指定值 $val 不存在<br>"; } } $sites = array(1,"2",2,3,"4",4,5); f($sites,"1"); f($sites,2); f($sites,"4"); ?>
方法2:使用in_array()函數(shù)
在php中,想要查詢數(shù)組是否存在某值,可以直接使用內(nèi)置函數(shù)in_array()
in_array() 函數(shù)搜索數(shù)組中是否存在指定的值。語(yǔ)法格式:
in_array ( $search , $array ,$strict)
參數(shù) | 描述 |
---|---|
search | 必需。規(guī)定要在數(shù)組搜索的值。 |
array | 必需。規(guī)定要搜索的數(shù)組。 |
strict | 可選。如果該參數(shù)設(shè)置為 TRUE,則 in_array() 函數(shù)檢查搜索的數(shù)據(jù)與數(shù)組的值的類型是否相同。 |
返回值:如果在數(shù)組中找到值則返回 TRUE,否則返回 FALSE。
示例:
<?php header('content-type:text/html;charset=utf-8'); function f($arr,$val){ if (in_array($val, $arr)){ echo "指定值 $val 存在<br>"; }else{ echo "指定值 $val 不存在<br>"; } } $sites = array(1,"2",2,3,"4",4,5); f($sites,"1"); f($sites,2); f($sites,6); ?>
方法3:使用array_search()函數(shù)
array_search() 函數(shù)在數(shù)組中搜索某個(gè)鍵值,并返回對(duì)應(yīng)的鍵名。
利用該函數(shù)也可以查詢數(shù)組是否有存在某值,如果存在則則返回對(duì)應(yīng)鍵名,如果不存在則返回false。
語(yǔ)法:
array_search(value,array,strict)
參數(shù) | 描述 |
---|---|
value | 必需。規(guī)定在數(shù)組中搜索的鍵值。 |
array | 必需。規(guī)定被搜索的數(shù)組。 |
strict | 可選。如果該參數(shù)被設(shè)置為 TRUE,則函數(shù)在數(shù)組中搜索數(shù)據(jù)類型和值都一致的元素??赡艿闹担?ul class=" list-paddingleft-2"> true false - 默認(rèn) |
返回值:
如果在數(shù)組中找到指定的鍵值,則返回對(duì)應(yīng)的鍵名,否則返回 FALSE。如果在數(shù)組中找到鍵值超過(guò)一次,則返回第一次找到的鍵值所匹配的鍵名。
示例:
<?php header('content-type:text/html;charset=utf-8'); function f($arr,$val){ $res=array_search($val, $arr); var_dump($res); } $sites = array(1,"2",2,3,"4",4,5); f($sites,"1"); f($sites,2); f($sites,6); ?>
感謝各位的閱讀,以上就是“php如何檢測(cè)數(shù)組中是否有指定值”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)php如何檢測(cè)數(shù)組中是否有指定值這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。