ホームページ >バックエンド開発 >PHPの問題 >PHP配列は値に基づいて要素を削除します

PHP配列は値に基づいて要素を削除します

WBOY
WBOYオリジナル
2023-05-19 11:47:07488ブラウズ

PHP 開発では、配列は一般的に使用されるデータ構造であり、私たちのプログラミングのキャリアでは非常に一般的であり、データを簡単に保存および管理できます。ただし、配列から特定の要素を削除する必要がある状況もあります。この記事では、値に基づいて PHP 配列の要素を削除する方法について説明します。

PHP には、配列を操作するためのさまざまな配列関数が用意されています。配列から要素を削除するには、PHP が提供する unset() 関数を使用できます。 unset() 関数の役割は、指定されたキーを持つ要素を配列から削除し、新しい配列を返すことです。

まず、配列内の指定したキー名の要素を削除する方法を見てみましょう。以下は配列の例です:

$cities = array("北京", "上海", "广州", "深圳");

unset() 関数を使用して、指定されたキー名の要素を削除できます。たとえば、$cities 配列内のキー名 1 の要素 (つまり上海) を削除したい場合は、次のように実行できます。

unset($cities[1]);

上記のコードでは、unset() 関数を使用して削除します。 $cities 配列内のキー名 1 の要素。上記のコードを実行すると、$cities 配列には Shanghai 要素が含まれなくなります。

要素を削除した後も他の要素のキーの順序を保持したい場合は、次のコードを使用できます:

$cities = array_values($cities);

上記のコードでは、array_values 関数を使用します。新しい配列を作成し、配列キーをリセットします。

さて、キー名ではなく値に基づいて要素を削除したい場合は、どうすればよいでしょうか? PHP の array_search() 関数を使用できます。

array_search() 関数は、指定された値が配列内に存在するかどうかを検索し、配列内の値のキー名を返します。値が存在しない場合は false を返します。この関数を使用して、配列から特定の要素を削除できます。以下は例です:

$cities = array("北京", "上海", "广州", "深圳");
$search_value = "上海";
$key = array_search($search_value, $cities);
if($key !== false) {
    unset($cities[$key]);
}

上記のコードでは、まず array_search() 関数を使用して、$cities 配列内に値「Shanghai」を持つ要素があるかどうかを検索し、キー名を返します。要素の。要素が存在する場合は、unset() 関数を使用して配列から要素を削除します。

上記のコードでは、2 つの値のデータ型と値を比較する等価演算子「!==」を使用していることに注意してください。 array_search() 関数は有効なキーとみなされる 0 を返す可能性があるため、キーを比較するには必ず等号演算子を使用する必要があります。

要約すると、PHP で値に基づいて要素を削除するには、array_search() 関数を使用して配列内の特定の値を検索し、unset() 関数を使用して要素を削除する必要があります。要素を削除した後、配列のキーの順序を再編成する必要がある場合があることに注意してください。これは、array_values() 関数を使用して実現できます。

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

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