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

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

PHPz
リリース: 2023-04-18 15:53:23
オリジナル
547 人が閲覧しました

配列を処理するとき、より正確な結果を得るために null 値を削除する必要がある場合があります。 PHPで配列を操作し、配列からnull値を削除する方法を以下に説明します。

PHP には、unset()array_filter()array_values() など、配列を操作できる関数が多数あります。等unset() 関数は指定された変数を削除するために使用され、array_filter() 関数は配列内の要素をフィルタリングでき、array_values() 関数はすべての配列値を返すことができます。これらの関数は、配列から null 値を削除するために使用できます。これらの機能の詳しい使い方を見ていきましょう。

unset 関数を使用して null 値を削除する

unset この関数を使用すると、配列内の指定した要素を削除できます。 foreach を使用して配列をループし、unset 関数を使用して null 値を削除できます。

<?php
$arr = array(&#39;aa&#39;, &#39;&#39;, &#39;bb&#39;, null, 0, &#39;cc&#39;);
foreach($arr as $k=>$v){
    if(!$v){
        unset($arr[$k]);
    }
}
ログイン後にコピー

配列をトラバースすることで、配列内の null 値を削除できます。ただし、unset 関数を使用した後は、配列のキー名が不連続になる、つまり配列の添字にギャップが生じることに注意してください。

array_filter 関数を使用して空の値をフィルタリングする

array_filter この関数は、指定されたルールに従って配列内の要素をフィルタリングし、新しい配列を返すことができます。

<?php
$arr = array(&#39;aa&#39;, &#39;&#39;, &#39;bb&#39;, null, 0, &#39;cc&#39;);
$arr = array_filter($arr,function($v){
    if($v === &#39;&#39; || $v === null || $v === 0){
        return false;
    }else{
        return true;
    }
});
?>
ログイン後にコピー

上記のコードでは、array_filter関数を使用し、配列の各要素が空かどうかを判定する判定関数を渡しており、空の場合は配列から削除しています。 . .

array_values 関数を使用して配列のインデックスを再作成する

array_values この関数は、連想配列内のキー名を削除し、インデックス配列を返すことができます。

<?php
$arr = array(&#39;aa&#39;, &#39;&#39;, &#39;bb&#39;, null, 0, &#39;cc&#39;);
$arr = array_filter($arr,function($v){
    if($v === &#39;&#39; || $v === null || $v === 0){
        return false;
    }else{
        return true;
    }
});
$arr = array_values($arr);
?>
ログイン後にコピー

上記のコードでは、array_values 関数を使用して、返された配列を $arr に再割り当てし、新しいインデックス配列を取得します。このようにして、元の配列の null 値を削除する操作が実現できます。

概要

上記は、PHP で配列から null 値を削除する方法です。 unset 関数を使用して指定した要素を削除できます。また、array_filter 関数を使用して空でない要素を除外することもできます。また、array_values## を使用することもできます。 # 配列のインデックスを再作成する関数。実際の状況に応じて、アレイを操作するためのさまざまな方法を選択します。

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

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