PHP では、配列は複数の値を保存し、キー値に基づいて取得できる重要なデータ型です。ただし、配列から指定した値を削除する必要がある場合は、PHP が提供する配列関数を使用する必要があります。
PHP では、unset() 関数を使用して配列要素を削除できますが、削除できるのは 1 つの要素のみです。指定した複数の要素を削除したい場合は、array_filter() 関数を使用する必要があります。 。
array_filter() 関数は、非常に一般的に使用される PHP 配列関数で、配列内の要素をフィルタリングし、条件を満たす要素を返すことができます。この関数の構文は次のとおりです。
array_filter ( array $array [, callable $callback [, int $flag = 0 ]] ) : array
このうち、$array はフィルタリングする配列、$callback はフィルタ関数、$flag はフラグ パラメータ、0 は元のキー名を保持することを意味します (デフォルト)、1 はキー名をリセットすることを意味します。
$callback パラメーターが指定されていない場合、array_filter() 関数は、0、null、空の文字列、false を含む、配列内の false に相当するすべての値を削除します。 $callback 関数が指定されている場合、この関数は、$callback 関数の実行後に戻り値が true となる要素を要素とする新しい配列を返します。
以下では、array_filter() 関数を使用して、配列内の指定された値を削除します。
function removeValueFromArray($array, $value) { return array_values(array_filter($array, function($item) use ($value) { return $item !== $value; })); } $array = array('apple', 'banana', 'orange', 'pear'); $value = 'banana'; $result = removeValueFromArray($array, $value); print_r($result);
上の例では、2 つのパラメーターを受け入れる、removeValueFromArray() という名前の関数を定義しました。 array は削除される要素の配列を表し、$value は削除される要素の値を表します。
関数では、array_filter() 関数を使用して配列内の $value に等しい要素をフィルターで除外し、次に array_values() 関数を使用して結果配列のインデックスを再作成し、最後に結果を返します。
上記のコードにより、配列内の指定された要素を削除する操作が完了しました。
概要:
PHP では、配列で指定された値を削除するのが一般的な操作です。 unset() 関数を使用して単一の要素を削除し、array_filter() 関数を使用して複数の要素を削除できます。 array_filter()関数を使用する場合、指定した要素を削除するにはfilter関数の条件を指定する必要があります。
以上がPHPで配列内の指定した値を削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。