ホームページ > バックエンド開発 > PHPの問題 > PHPは空の配列を削除します

PHPは空の配列を削除します

王林
リリース: 2023-05-07 16:26:09
オリジナル
529 人が閲覧しました

PHP では、配列を処理する必要があることがよくありますが、場合によっては、配列から空の要素を削除するなど、配列に対して何らかの操作を実行する必要があります。空の要素は配列上の他の操作に影響を与える可能性があるため、削除する必要があります。この記事では、PHP を使用して配列から空の要素を削除する方法を説明します。

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

PHP には、配列内の要素をフィルタリングするために使用できる array_filter() 関数が用意されています。コールバック関数を作成し、この関数を使用して配列をフィルタリングし、空の要素を削除できます。

以下はサンプル コードです:

<?php 
$fruits = array("apple", "banana", "", "orange", "", "peach"); 
$new_fruits = array_filter($fruits); 
print_r($new_fruits); 
?>
ログイン後にコピー

出力:

Array ( 
    [0] => apple 
    [1] => banana 
    [3] => orange 
    [5] => peach 
)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

ご覧のとおり、空の要素が新しい配列から正常に削除されました。

  1. foreach ループを使用する

配列を処理するもう 1 つの方法は、foreach ループを使用することです。配列を走査して、各要素が空かどうかを確認できます。空の要素は削除されます。要素が見つかった場合。

以下はサンプル コードです:

<?php 
$fruits = array("apple", "banana", "", "orange", "", "peach"); 
foreach ($fruits as $key => $value) { 
    if($value == ""){ 
        unset($fruits[$key]); 
    } 
} 
print_r($fruits); 
?>
ログイン後にコピー

出力:

Array ( 
    [0] => apple 
    [1] => banana 
    [3] => orange 
    [5] => peach 
)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

空の要素が配列から正常に削除されたこともわかります。

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

PHP が提供する array_diff() 関数を使用することもできます。これを使用すると、2 つの配列の差を比較して、差分の結果。配列から空の要素を削除したい場合は、空の要素のみを含む別の配列との差を比較することで空の要素を削除できます。

以下はサンプル コードです:

<?php 
$fruits = array("apple", "banana", "", "orange", "", "peach"); 
$empty_elem = array(""); 
$new_fruits = array_diff($fruits, $empty_elem); 
print_r($new_fruits); 
?>
ログイン後にコピー

出力:

Array ( 
    [0] => apple 
    [1] => banana 
    [3] => orange 
    [5] => peach 
)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

ご覧のとおり、空の要素が新しい配列から正常に削除されました。

概要

この記事では、PHP を使用して配列内の空の要素を削除する 3 つの方法を紹介します。 array_filter() 関数を使用してコールバック関数を使用してフィルタリングし、foreach ループを使用して空の要素を 1 つずつチェックして削除し、array_diff() 関数を使用して別の配列と比較して削除する要素を削除します。実際のニーズに応じて、これらのメソッドのいずれかを選択して、配列から空の要素を削除できます。

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

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