PHP 言語を配列操作に使用するプロセスでは、配列から null 値を削除する必要がある場合があります。 null 値は一部の配列操作に影響を与えるため、場合によっては null 値が配列操作に悪影響を及ぼすことを望まないため、null 値を削除することが非常に必要になります。それでは次に、PHP で配列から null 値を削除する方法を見てみましょう。
1. array_filter() 関数を使用する
配列から null 値を除外するには、まず思い浮かぶのは、PHP の array_filter() 関数を使用することです。この関数は、元の配列の処理時にコールバック関数が false を返した要素を含まない新しい配列を返します。ここでは、PHP の組み込み is_null() 関数を使用して判断を行い、null 値を持つ要素を除外できます。
具体的な実装方法は次のとおりです。
$arr = array('aa', 0, null, '', false, true, null, 'bb'); $filteredArray = array_filter($arr, function($item) { return !is_null($item); });
これを実行すると、$filteredArray には null 以外の値のみが含まれます。
2. foreach ループを使用して null 値を削除する
さらに、foreach ループを使用して配列を走査し、null 値を削除することもできます。
実装できるコードは以下のとおりです。
foreach ($arr as $key => $value) { if(is_null($value)){ unset($arr[$key]); } }
このようにして、元の配列のnull値を削除することができます。もちろん、unset() 関数を使用すると、配列のキーが再配置されます。キーを再配置したくない場合は、次のコードも使用できます:
foreach ($arr as $key => $value) { if(is_null($value)){ array_splice($arr, $key, 1); } }
3。array_diff を使用します。 () function
もう 1 つの比較的簡単な方法は、array_diff() 関数を使用して、元の配列と null 値のみを含む配列の間で違いを出し、それによって null 値を削除することです。
実装できるコードは次のとおりです:
$arr = array('aa', 0, null, '', false, true, null, 'bb'); $filteredArray = array_diff($arr, array(null));
これを実行すると、$filteredArray には null 以外の値のみが含まれます。
まとめ
実際の開発では、状況に応じて自分に合った方法を柔軟に選択する必要があります。 array_filter() 関数を使用すると、1 行のコードで問題を解決できますが、配列要素が多すぎると、ある程度のパフォーマンスが消費されます。パフォーマンスを考慮すると、foreach ループまたは array_diff() 関数を使用する方が適切です。
以上がPHPで配列からnull値を削除する方法(3つの方法)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。