判斷步驟:1、使用foreach語句循環遍歷二維數組的外層數組元素,語法““foreach($arr as $v){//循環體代碼}””;2、在循環體中,利用“if(is_array($v)){if(array_search(元素值,$v)){//指定元素在二維數組中}}else{if($v===元素值){//指定元素在二維數組中}}”語句判斷指定元素是否在二維數組中。
本教程操作環境:windows7系統、PHP8.1版、DELL G3電腦
php判斷元素是否在二維數組中的方法
步驟1、使用foreach語句循環遍歷二維數組的外層數組元素
foreach($arr as $v){ //循環體代碼 }
遍歷給定的 $arr 數組,在每次循環中會將當前數組的值賦給 $v。
步驟2、在循環體中,判斷元素是否在二維數組中
使用is_array()函數判斷外層元素是否為數組類型(是否為子數組)
-
如果是則利用array_search()判斷指定元素是否在子數組中
-
如何不是則利用“===”判斷當前元素是否為指定元素即可
if(is_array($v)){ if(array_search(7,$v)){ echo "指定元素在二維數組中"; break; } }else{ if($v===7){ echo "指定元素在二維數組中"; break; } }
完整實現代碼:
<?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 "指定元素在二維數組中"; break; } }else{ if($v===7){ echo "指定元素在二維數組中"; 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 在二維數組中<br>"; } else { echo "指定元素 $val 不在二維數組中<br>"; } } $arr = array(1, 2, 3, array(4, 5, 6), 7, 8, array(9, 10)); var_dump($arr); f("h",$arr); f(7,$arr); ?>
推薦學習:《PHP視頻教程》