PHP では、配列に対して追加、削除、フィルタリングなどの操作を実行する必要があることがよくあります。その中でも、配列内の要素の削除は、より一般的な操作の 1 つです。この記事では、PHP で配列要素を削除するいくつかの方法を紹介し、その長所と短所について説明します。
1. unset() 関数を使用します
unset() 関数を使用して、配列内の指定された要素を削除します。構文は次のとおりです:
unset($ array[key]) ;
このうち、$array は削除する要素の配列、key は削除する要素のキー名です。 unset() 関数を使用して要素を削除する例は次のとおりです。
// 連想配列を作成します
$person = array('name' => ' Tom', 'age ' => 20, 'gender' => 'male');
//連想配列内の 'age' 要素を削除します
unset($person['age ']);
// 出力変数 $person
print_r($person);
?>
出力結果は次のとおりです:
Array
(
[name] => Tom [gender] => male
)
2. array_diff() 関数を使用します
array_diff() 関数を使用して、2 つ以上の配列の要素を比較し、戻り値を返します違い。配列内の特定の要素を削除したい場合は、削除する要素を配列として array_diff() 関数に渡し、返された結果を元の配列に再割り当てします。
以下はサンプルコードです:
// 配列を作成します
$fruit = array('apple', 'banana', 'cherry' , 'durian');
//削除する要素
$toRemove = array('banana', 'cherry');
//削除する要素はパラメータは array_diff() 関数に渡されます
$fruit = array_diff($fruit, $toRemove);
// 出力配列 $fruit
print_r($fruit);
?>
出力結果は次のとおりです:
Array
(
[0] => apple [3] => durian
)
3. array_filter() 関数を使用します
array_filter( ) 関数を使用すると、配列内の要素をフィルタリングでき、カスタム コールバック関数をフィルタ条件として受け入れることができます。このコールバック関数は、配列内の各要素を入力として受け入れ、ブール値を返します。戻り値が true の場合、要素は保存され、それ以外の場合、要素は削除されます。
以下はサンプルコードです:
// 配列を作成します
$numbers = array(1, 2, 3, 4, 5, 6) ) ;
// 3 より大きいすべての要素を保存するコールバック関数を定義します
function filterNumbers($value)
{
return ($value > 3);</p> <p>}</p> <p>// array_filter() 関数は、配列内の要素をフィルターします。<br>$numbers = array_filter($numbers, 'filterNumbers');</p> <p>// 出力配列 $numbers<br>print_r($numbers);<br>? ></p> <p>出力結果は次のとおりです:</p> <p>Array<br>(</p> <pre class="brush:php;toolbar:false">[3] => 4 [4] => 5 [5] => 6
)
4. array_splice() を使用します。 function
array_splice() 関数を使用して、配列から要素を削除し、削除された要素を返します。この関数は、配列内で削除される要素の位置を示す 1 つ以上のインデックス パラメーターを受け入れることができます。
以下はサンプルコードです:
// 配列を作成します
$alphabet = array('a', 'b', 'c' , 'd', 'e', 'f');
// array_splice() 関数を使用して、array の 2 番目と 3 番目の要素を削除します。
$removed = array_splice($alphabet , 1 , 2);
//出力配列 $alphabet と削除された要素 $removed
print_r($alphabet);
print_r($removed);
?>
出力結果は次のとおりです:
Array
(
[0] => a [1] => d [2] => e [3] => f
)
Array
(
[0] => b [1] => c
)
# # 5. array_pop() 関数と array_shift() 関数を使用しますarray_pop() 関数を使用して配列の最後の要素を削除し、array_shift() 関数を使用して配列の最初の要素を削除します。 以下はサンプルコードです:// 配列を作成しますarray_pop($content);
array_shift($content);
print_r($content);
?>
出力結果は次のとおりです:
(
[0] => body
以上がPHPで配列要素を削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。