判斷步驟:1、使用foreach語(yǔ)句循環(huán)遍歷二維數(shù)組的外層數(shù)組元素,語(yǔ)法““foreach($arr as $v){//循環(huán)體代碼}””;2、在循環(huán)體中,利用“if(is_array($v)){if(array_search(元素值,$v)){//指定元素在二維數(shù)組中}}else{if($v===元素值){//指定元素在二維數(shù)組中}}”語(yǔ)句判斷指定元素是否在二維數(shù)組中。
本教程操作環(huán)境:windows7系統(tǒng)、PHP8.1版、DELL G3電腦
php判斷元素是否在二維數(shù)組中的方法
步驟1、使用foreach語(yǔ)句循環(huán)遍歷二維數(shù)組的外層數(shù)組元素
foreach($arr as $v){ //循環(huán)體代碼 }
遍歷給定的 $arr 數(shù)組,在每次循環(huán)中會(huì)將當(dāng)前數(shù)組的值賦給 $v。
步驟2、在循環(huán)體中,判斷元素是否在二維數(shù)組中
使用is_array()函數(shù)判斷外層元素是否為數(shù)組類(lèi)型(是否為子數(shù)組)
-
如果是則利用array_search()判斷指定元素是否在子數(shù)組中
-
如何不是則利用“===”判斷當(dāng)前元素是否為指定元素即可
if(is_array($v)){ if(array_search(7,$v)){ echo "指定元素在二維數(shù)組中"; break; } }else{ if($v===7){ echo "指定元素在二維數(shù)組中"; break; } }
完整實(shí)現(xiàn)代碼:
<?php header("content-type:text/html;charset=utf-8"); $arr = array(1,2,3,array(4,5,6),7,8,array(9,10)); var_dump($arr); foreach($arr as $v){ if(is_array($v)){ if(array_search(7,$v)){ echo "指定元素在二維數(shù)組中"; break; } }else{ if($v===7){ echo "指定元素在二維數(shù)組中"; break; } } } ?>
改良一下:
<?php header("content-type:text/html;charset=utf-8"); function f($val,$arr) { $con = 0; foreach ($arr as $v) { if (is_array($v)) { if (array_search($val, $v)) { $con = 1; break; } } else { if ($v === $val) { $con = 1; break; } } } if ($con == 1) { echo "指定元素 $val 在二維數(shù)組中<br>"; } else { echo "指定元素 $val 不在二維數(shù)組中<br>"; } } $arr = array(1, 2, 3, array(4, 5, 6), 7, 8, array(9, 10)); var_dump($arr); f("h",$arr); f(7,$arr); ?>
推薦學(xué)習(xí):《PHP視頻教程》