ホームページ > バックエンド開発 > PHPの問題 > 配列内のnullまたは空の要素を削除する方法

配列内のnullまたは空の要素を削除する方法

Johnathan Smith
リリース: 2025-03-03 16:44:14
オリジナル
797 人が閲覧しました

PHPアレイからnullまたは空の要素を削除する

この質問では、PHPアレイからnullまたは空の要素を削除する方法について説明します。 これを実現するには、ビルトイン関数を使用したよりエレガントなアプローチに至るまで、これを実現する方法がいくつかあります。 いくつかのオプションを調べてみましょう:

方法1: array_filter()

の使用array_filter()>関数は、nullまたは空の要素を削除する最も効率的で簡潔な方法です。各要素を保持するか削除するかを決定する引数としてコールバック関数を取得します。

$array = [1, 0, "hello", null, "", "world", false, 2, null];

$filteredArray = array_filter($array, function ($value) {
  return !is_null($value) && $value !== "";
});

print_r($filteredArray); // Output: Array ( [0] => 1 [2] => hello [5] => world [7] => 2 )
ログイン後にコピー

このコードは、lambda関数を使用して、要素がnullでも空の文字列でもないかどうかを確認します。 !is_null($value)パーツは明示的にnull値をチェックしますが、$value !== ""は空の文字列をチェックします。 0およびfalseは有効な要素と見なされ、保存されることに注意してください。また、0およびfalseを削除する必要がある場合は、それに応じてコールバック関数を変更する必要があります(以下を参照)。

方法3:0およびfalseを削除してforeach

を削除してarray_filter()foreach

>
$array = [1, 0, "hello", null, "", "world", false, 2, null];
$filteredArray = [];

foreach ($array as $value) {
  if (!is_null($value) && $value !== "") {
    $filteredArray[] = $value;
  }
}

print_r($filteredArray); // Output: Array ( [0] => 1 [1] => hello [2] => world [3] => 2 )
ログイン後にコピー
>

を削除してnullと空の文字列とともに削除する場合は、

0 falsearray_filter()PHPアレイからnull値のみを削除する最も効率的な方法は、null値をチェックするコールバック関数を使用してifを使用することです。以前に説明したように、空の文字列とヌルをフィルタリングすることは、両方の条件をチェックするコールバック関数を使用してforeachを使用します。

内蔵PHP関数は、nullと空の要素の配列をクレンジングします

nullと空の文字列要素の両方を同時に直接削除する単一の組み込み関数はありませんが、array_filter()は最も近くて最も効率的な組み込みのソリューションです。 コールバック関数を使用してフィルタリング基準を定義する柔軟性を提供し、特定のニーズに基づいてヌル、空の文字列、またはその他の望ましくない要素を削除できるようにします。 foreachループを使用することは、代替手段ですが、効率が低いアプローチです。

以上が配列内のnullまたは空の要素を削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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