#この記事の動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューターPHP 配列から要素を削除する方法: 1. "unset($array[1]);" を通じて配列要素を削除します; 2. "array_splice($array, 1, 1);" メソッドを通じて削除します配列要素。
はじめに
PHP の配列は、率直に言えば、マップされたキーと値のペアのセットです。では、配列要素から要素を削除するにはどうすればよいでしょうか?まず配列を走査し、次にターゲット項目を見つけて、それを削除することを考える必要があります。 一部の学生が、削除する要素 = null を設定しているのを見ましたが、値として null も存在するため、これは機能しません。要素は削除できません。 この記事では、配列要素を削除する方法について具体的に説明します。 学習時間大まかに言えば、配列要素を削除するには 2 つの一般的な方法があります。1 つは unset 関数、もう 1 つは array_splice 関数です。 array_splice いつ使用するか?つまり、値は取得できますが、そのインデックスがわからないため、これを使用する必要があります。unset 関数
unset 関数を使用してもインデックスは再構築されず、配列はシャッフルされないことに注意してください。要素を削除した後にインデックスを再作成したい場合は、array_values を実行すると、返された配列のインデックスが再作成されます。また、デフォルトではすべてのインデックスが 0 から始まる数値に設定されます。 例:$array = [0 => "a", 1 => "b", 2 => "c"]; unset($array[1]);この操作を実行すると、配列 $array の値は次のようになります:
[ [0] => a [2] => c ]配列のインデックスが変更されていないことがわかります。 [推奨学習:
PHP ビデオ チュートリアル ]
array_splice 関数
この関数は、要素を削除した後に配列を関連付けます。この関数のパラメータ形式:array array_splice( array &$input, int $offset[, int $length = 0[, mixed $replacement]] )は、配列の一部を削除し、他の値に置き換えるのに使用されます。最後のパラメータ置換が渡されない場合、デフォルトでオフセットから開始されます。数値インデックスの場合、返された配列は再インデックスされます:
$array = [0 => "a", 1 => "b", 2 => "c"]; array_splice($array, 1, 1);戻り値:
[ [0] => a [1] => c ]Youインデックスが再作成されたことがわかります。 さらに一歩進んでください上記の 2 つの例は、両方とも単一要素の削除です。複数の配列要素の削除について話しましょう。 unset / arraysplice は面倒で、いちいち操作しなければなりません。配列要素のキーまたは値がわかっている場合は、array_diff / array_diff_key を使用してバッチ操作を実行できます。 array_diff 関数たとえば、削除する要素の値がわかっている場合は、次のように削除できます。 "a", 1 => "b", 2 => "c"];$array = array_diff($array, ["a", "c"]);
<br/>結果出力:
[ [1] => b ]配列のインデックスは再構築されません。 array_diff_keys 関数削除する要素のインデックスがわかっている場合は、次のように削除できます:
$array = [0 => "a", 1 => "b", 2 => "c"]; $array = array_diff_key($array, [0 => "xy", "2" => "xy"]);実行後の出力:
[ [1] => b ]インデックスは再構築されません。
最後に記載
この記事では、配列から要素を削除する方法をいくつかの例を使用して説明します。そのため、世界中を回る必要はありません。 for ループを使用します。 PHP には、冗長なコードを減らすのに役立つ機能的なツールが多数用意されているので、それらを使用する必要があります。
以上がPHP配列から要素を削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。