ホームページ >バックエンド開発 >PHPの問題 >PHPで2次元配列から値を削除する方法

PHPで2次元配列から値を削除する方法

青灯夜游
青灯夜游オリジナル
2022-07-15 20:07:032826ブラウズ

削除手順: 1. 2 次元配列の外側の配列要素をループします。構文は "foreach($arr as $k=>$v){loop body code}" です。 2.ループ本体で、 unset() を使用して指定された値を削除します。構文 "if(is_array($v)){$ck=array_search(value,$v);if($ck){unset($arr[$ k][$ck] );}}else{if($v===value){unset($arr[$k]);}}"。

PHPで2次元配列から値を削除する方法

このチュートリアルの動作環境: Windows 7 システム、PHP バージョン 8.1、DELL G3 コンピューター

PHP では、foreach を使用できます。 unset() 関数は、2 次元配列内の指定された値を削除します。

実装手順:

ステップ 1: foreach ステートメントを使用して、2 次元配列の外側の配列要素をループします。

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

指定された $arr 配列をトラバースし、各ループで現在の配列の値が $v に割り当てられ、キー名が $k に割り当てられます。

ステップ 2: ループ本体で、2 次元配列内の指定された値を削除します。

is_array() 関数を使用して、外側の要素が配列タイプ (Subarray かどうか)

  • その場合は、array_search() を使用して指定された値に対応するキー名を取得し、unset() 関数を使用して要素を削除します。キー名に基づいて

  • そうでない場合は、「===」を直接使用して現在の要素が指定された要素であるかどうかを判断し、そうであれば unset() 関数を使用して削除します。要素。

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

完全な実装コード: 2 次元配列の 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で2次元配列から値を削除する方法

推奨される調査: " PHP ビデオ チュートリアル >>

以上がPHPで2次元配列から値を削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。