$v){...}" メソッドを使用して、配列から null 値を削除します; 2. while 構文構造を使用して、 null 値を削除; 3. array_filter 関数を使用して配列をフィルタリングし、null 値を削除します。"/> $v){...}" メソッドを使用して、配列から null 値を削除します; 2. while 構文構造を使用して、 null 値を削除; 3. array_filter 関数を使用して配列をフィルタリングし、null 値を削除します。">

ホームページ >バックエンド開発 >PHPの問題 >PHP配列からnullを削除する方法

PHP配列からnullを削除する方法

藏色散人
藏色散人オリジナル
2022-12-23 10:27:374648ブラウズ

PHP 配列から null を削除する方法: 1. "foreach( $arr as $k=>$v){...}" メソッドを使用して、配列の null 値を削除します。 while 構文構造を使用して null 値を削除します; 3. array_filter 関数を使用して配列をフィルターし、null 値を削除します。

PHP配列からnullを削除する方法

このチュートリアルの動作環境: Windows 10 システム、PHP バージョン 8.1、DELL G3 コンピューター

から null を削除する方法phpの配列?

PHPで配列内のnull値を削除する方法の紹介

恥ずかしながら、以前はnull値を削除する際に配列からは、常に foreach または while を使用しました。これら 2 つの文法構造を使用して、配列内の空の要素を削除します。簡単なコードは次のとおりです:

コードは次のとおりです:

<?php  
foreach( $arr as $k=>$v){  
    if( !$v )  
        unset( $arr[$k] );  
}  
?>

そして、私自身はかなり良いと感じていますが、これはあまり効率的ではありません。私はそれを試してみましたが、最初に $arr をオブジェクトに変換し、次にオブジェクトの特性を使用してそれを削除します。 foreach を実行するたびに変数がコピーされるため、ページ内に変数が多すぎると、foreach の消費が大きくなります。

インターネットを徘徊していると、array_filter の使用を提案している人を見て驚きました。説明書を開いて見てみると、宝の山を守っていたが使い方が分からなかった。

array_filter 関数の機能は、コールバック関数を使用して配列をフィルタリングすることです。コールバック関数を使用して処理できると常々思っていましたが、次の文があることに気づきませんでした。コールバック関数がない場合、デフォルトでは配列内の値が削除されます。 false の項目。

コードは次のとおりです:

<?php  
$entry = array(  
             0 => &#39;foo&#39;,  
             1 => false,  
             2 => -1,  
             3 => null,  
             4 => &#39;&#39; 
          );  
print_r(array_filter($entry));  
?>

出力値は次のとおりです:

コードは次のとおりです:

Array  
(  
    [0] => foo  
    [2] => -1  
)

まだ必要があるようです今後さらにマニュアルを読んでください...array_slice と同様に、これも良いことです。残念ながら今まで気付かなかったです。

添付ファイル: 別の例

コードは次のとおりです:

$strDelCodes = "A;B;;C;;C;D;;;D;D";
$rsArray = array_values (array_unique (array_diff (split (";", $strDelCodes), array (""))));

配列 $rsArray に格納される値は次のとおりです: A B C D

array_values( ) 関数は、指定された配列内のすべてのキー値の配列を含む配列を返しますが、キー名は保持しません。

array_diff() 関数は、2 つの配列の差分配列を返します。この配列には、比較対象の配列内にあるが、他の引数配列には含まれていないすべてのキーが含まれます。

array_unique() 関数は、配列から重複する値を削除し、結果の配列を返します。複数の配列要素の値が等しい場合、最初の要素のみが保持され、他の要素は削除されます。

返された配列内のキー名は変更されません。

array_merge() 関数は、2 つ以上の配列を 1 つの配列にマージします。

キー名が繰り返される場合、キーのキー値は最後のキー名に対応する値になります (後のキー名が前のキー名を上書きします)。配列が数値的にインデックス付けされている場合、キー名は連続して再インデックス付けされます。

推奨学習: 「PHP ビデオ チュートリアル

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

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