PHPで2次元配列のフィールドの値を削除する方法

青灯夜游
リリース: 2023-03-16 22:04:02
オリジナル
2875 人が閲覧しました

実装手順: 1. 2 つの foreach をネストして、2 次元配列の内側層と外側層のキー名とキー値を走査します。構文は "foreach($arr as $k1 =>$v2){foreach($v1 as $k2=>$v2){//ループ本体のステートメント ブロック}}"; 2. ループ本体で、「===」を使用して指定されたフィールド名を検索します。構文 "if($k==="指定されたフィールド名"){unset($arr[$k1][$k2]);}" 。

PHPで2次元配列のフィールドの値を削除する方法

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

PHP では、foreach を使用できます。ステートメントと unset () 関数を使用して、2 次元配列内のフィールドの値を削除します。

実装手順:

ステップ 1: 2 つの foreach ステートメントをネストして、内部層と外部層のキー名とキーを走査します。 2 次元配列の Value

foreach ($array as $key => $value){
    foreach ($value as $k => $v){
        //内层循环体语句块;
    }
}
ログイン後にコピー
  • 外側層の最初の foreach ステートメント: 指定された $array 配列の外側層を走査し、現在の値を割り当てます。各ループ値の $ に配列を追加すると、$key にキー名が割り当てられます。

  • 内層の 2 番目の foreach ステートメント: $value サブ配列を走査し、各ループで現在の配列の値を $v に割り当て、キー名を $k に割り当てます。

ステップ 2: ループ本体で、「===」を使用して指定されたフィールド名の要素を検索し、unset() 関数を使用して要素を削除します。対応するキー名に従って

if($k==="指定字段名"){
   	unset($arr[$key][$k]);
}
ログイン後にコピー

実装コード:

function f($arr,$s){
	foreach ($arr as $key => $value){
	    foreach ($value as $k => $v){
			if($k===$s){
			   	unset($arr[$key][$k]);
			}
	    }
	}
	echo "删除后的二维数组:";
	var_dump($arr);
}
ログイン後にコピー

f($arr)を呼び出して次の関数を処理し、名前フィールドまたはスコアを削除しますフィールド

$arr=array(
  array(
    'name' => "小明",
    'score' => 85,
  ),
  array(
    'name' => "小华",
    'score' => 92,
  ),
  array(
    'name' => "霄晓",
    'score' => 100,
  ),
  array(
    'name' => "萧洁",
    'score' => 99,
  ),
  array(
    'name' => "赵峰",
    'score' => 96,
  )
);
var_dump($arr);
f($arr,"name");
ログイン後にコピー

PHPで2次元配列のフィールドの値を削除する方法

f($arr,"score");
ログイン後にコピー

PHPで2次元配列のフィールドの値を削除する方法

説明: foreachステートメント

foreachは、配列を走査するために特別に設計されたステートメントです。配列で一般的に使用されるメソッドは、配列の走査に非常に便利です。PHP5 以降では、オブジェクトも走査できるようになりました (foreach は配列とオブジェクトにのみ適用できます)。

foreach ステートメントは、配列の添字に関係なく配列を走査し、不連続なインデックス配列や文字列を添字として持つ連想配列に使用できます。

foreach ステートメントには 2 つの構文形式があります:

構文形式 1:

foreach ($array as $value){
    语句块;
}
ログイン後にコピー
  • 各ループで指定された $array 配列を走査します。 値を割り当てます。現在の配列を $value にコピーします。

構文形式 2:

foreach ($array as $key => $value){
    语句块;
}
ログイン後にコピー
  • 指定された $array 配列をスキャンし、現在の配列の値を $value (キー) に割り当てます。 $key に名前が割り当てられます。

foreach ステートメントがループすると、配列内のポインタが 1 ステップ前に移動し、配列の終わりまで走査されるまで、次のループで次の配列要素が取得されます。ループを横断して終了します。

推奨学習: 「PHP ビデオ チュートリアル

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

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート