ホームページ  >  記事  >  バックエンド開発  >  PHPは配列nullを削除します

PHPは配列nullを削除します

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

PHP では、配列は任意の数と種類の要素を格納できる非常に便利なデータ型です。配列内の一部の要素、特に null 値を削除する必要がある場合があります。この記事では、PHPを使って配列内のnull値を削除する方法を紹介します。

  1. unset() 関数を使用する

PHP の unset() 関数を使用して、配列内の要素を削除できます。配列から null 値を削除したい場合は、unset() 関数を使用して実行できます。

サンプル コードは次のとおりです:

<?php 
$myArray = array(1, 2, null, 3, null, 4); 
foreach ($myArray as $key => $value) { 
  if (is_null($value)) { 
    unset($myArray[$key]); 
  } 
} 
print_r($myArray); 
?>

出力結果:

Array ( [0] => 1 [1] => 2 [3] => 3 [5] => 4 )

この例では、最初に null 値を含む配列を作成します。次に、foreach ループを使用して配列を走査し、is_null() 関数を通じて要素が null かどうかを判断します。 null の場合は、unset() 関数を使用して要素を削除します。最後に、print_r() 関数を使用して結果を出力すると、配列内の null 値が削除されていることがわかります。

注: unset() 関数を使用すると、元の配列が変更され、配列のキー名がリセットされます。

  1. array_filter() 関数の使用

unset() 関数の使用に加えて、PHP の array_filter() 関数を使用して null 値を削除することもできます。配列で。 array_filter() 関数は、コールバック関数を指定することで、配列内の要素をフィルタリングできます。

サンプル コードは次のとおりです:

<?php 
$myArray = array(1, 2, null, 3, null, 4); 
$newArray = array_filter($myArray, function($element) { 
  return !is_null($element); 
}); 
print_r($newArray); 
?>

出力結果:

Array ( [0] => 1 [1] => 2 [3] => 3 [5] => 4 )

この例では、最初に null 値を含む配列を作成します。次に、array_filter() 関数を使用して配列内の要素をフィルターします。コールバック関数では、!is_null() 関数を使用して要素が null かどうかを判断します。 null でない場合は、要素を返します。最後に、print_r() 関数を使用して結果を出力すると、配列内の null 値が削除されていることがわかります。

注: array_filter() 関数を使用すると、新しい配列が返され、元の配列は変更されません。

  1. パフォーマンスの比較

配列内の null 値を削除する場合、unset() 関数または array_filter() 関数を使用してタスクを完了できます。 。ただし、性能は大きく異なります。

unset() 関数を使用すると、配列全体が走査され、元の配列が変更されます。つまり、配列に多数の要素がある場合、処理が非常に遅くなります。

対照的に、array_filter() 関数を使用すると、新しい配列が作成され、null ではない要素のみが含まれます。これは、特に配列が非常に大きい場合に高速になることを意味します。

したがって、配列内の null 値を削除する高パフォーマンスのメソッドが必要な場合は、array_filter() 関数を使用することをお勧めします。

概要:

PHP は、配列を処理するさまざまな方法を提供する非常に強力なプログラミング言語です。この記事では、unset() 関数と array_filter() 関数を使用して配列内の null 値を削除する方法を紹介しました。同時に、性能の違いも比較しました。この記事が、PHP で配列から null 値を削除する方法をよりよく理解するのに役立つことを願っています。

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

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