ホームページ >バックエンド開発 >PHPの問題 >配列phpから空の値を削除します

配列phpから空の値を削除します

王林
王林オリジナル
2023-05-19 16:50:37851ブラウズ

PHP では配列データを処理する必要がよくありますが、配列内に null 値が含まれる場合があり、null 値によって引き起こされる問題を回避するには、null 値を削除する必要があります。

以下では、配列内の null 値を削除するためによく使用されるいくつかの方法を紹介します。

  1. array_filter 関数を使用する

array_filter 関数は、配列内の要素をフィルタリングするために使用できる PHP の非常に強力な関数です。そのオプションの 2 番目のパラメータは、次の目的で使用できます。フィルタリング方法を指定します。

array_filter を使用して配列内の空の値を削除する場合、コールバック関数で empty を使用して、要素が空かどうかを判断できます。空の場合は、その要素を除外します。

具体的なコードは次のとおりです:

$arr = array('a', '', 'b', 'c', null, 'd');
$arr = array_filter($arr, function($val) {
    return !empty($val);
});

上記の例では、$arr 配列内の null 値が削除されます。

  1. array_diff 関数を使用する

array_diff 関数は、2 つの配列を比較し、2 つの配列の差を返すために使用されます。元の配列と空のみを含む配列を比較できます。要素の差分セットを検索すると、結果は null 値が削除された配列になります。

具体的なコードは次のとおりです:

$arr = array('a', '', 'b', 'c', null, 'd');
$empty_arr = array('');
$arr = array_diff($arr, $empty_arr);

上の例では、まず空の要素を 1 つだけ含む新しい配列 $empty_arr を作成します。次に、array_diff 関数を使用して $empty_arr と元の配列の差分を見つけ、結果は null 値が削除された配列になります。

  1. foreach ループの使用

foreach ループを使用して配列を走査し、要素が空かどうかを判断し、空でない要素を新しい配列に追加することもできます。結果の配列は、null 値が削除された配列です。

具体的なコードは次のとおりです:

$arr = array('a', '', 'b', 'c', null, 'd');
$new_arr = array();
foreach($arr as $val) {
    if(!empty($val)) {
        $new_arr[] = $val;
    }
}

上の例では、新しい空の配列 $new_arr を作成し、foreach ループを通じて元の配列を走査し、要素が空でない場合は、$new_arr に追加します。最後に、結果として得られる $new_arr は、null 値が削除された新しい配列です。

概要

配列から null 値を削除することは PHP では非常に一般的であり、処理方法も非常に簡単です。 array_filter 関数、array_diff 関数、または foreach ループを使用して配列を走査し、配列内の null 値を削除できます。実際の状況に応じて、配列内の null 値を処理するさまざまな方法を選択するだけです。

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

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