首頁 >後端開發 >PHP問題 >php怎麼去除二維數組中的某個值

php怎麼去除二維數組中的某個值

青灯夜游
青灯夜游原創
2022-07-15 20:07:032833瀏覽

去除步驟:1、循環遍歷二維數組的外層數組元素,語法「foreach($arr as $k=>$v){循環體程式碼}」;2、在循環體中,用unset()去除指定值,語法「if(is_array($v)){$ck=array_search(值,$v);if($ck){unset($arr[$k][$ck] );}}else{if($v===值){unset($arr[$k]);}}」。

php怎麼去除二維數組中的某個值

本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦

在php中,可以利用foreach語句並結合unset()函數來刪除二維數組中的某個指定值。

實作步驟:

步驟1:使用foreach語句循環遍歷二維數組的外層數組元素

foreach ($arr as $k => $v){
//循环体代码
}

遍歷給定的 $arr 數組,在每次循環中會將目前數組的值賦給 $v,鍵名賦給 $k。

步驟2:在循環體中,移除二維數組中的指定值

使用is_array()函數判斷外層元素是否為數組類型(是否為子數組)

  • 如果是則使用array_search()取得指定值對應的鍵名,再根據鍵名使用unset()函數刪除該元素

  • 如果不是,則直接利用「===」判斷目前元素是否為指定元素,如果是用unset()函式刪除該元素。

if (is_array($v)) {
	$ck = array_search(指定值, $v);
	if ($ck) {
		unset($arr[$k][$ck]);
	}
} else {
	if ($v === 指定值) {
		unset($arr[$k]);
	}
}

完整實作程式碼:移除二維陣列中的1

<?php
header("content-type:text/html;charset=utf-8");
$arr = array(1, 2, 3, array(4, 1, 6), array(7, 8, 9, 10));
echo "原数组:";
var_dump($arr);
foreach ($arr as $k => $v) {
	if (is_array($v)) {
		$ck = array_search(1, $v);
		if ($ck) {
			unset($arr[$k][$ck]);
		}
	} else {
		if ($v === 1) {
			unset($arr[$k]);
		}
	}
}
echo "去除元素1后:";
var_dump($arr);
?>

php怎麼去除二維數組中的某個值

推薦學習:《 PHP影片教學

以上是php怎麼去除二維數組中的某個值的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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