ホームページ > バックエンド開発 > PHPチュートリアル > PHP 配列からキーではなく値で要素を削除するにはどうすればよいですか?

PHP 配列からキーではなく値で要素を削除するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-12-23 19:46:10
オリジナル
317 人が閲覧しました

How Can I Remove an Element from a PHP Array by Value, Not Key?

値 (キーではない) による PHP 配列からの要素の削除

PHP で配列を扱う場合、多くの場合、要素に基づいて要素を削除する必要があります。キーではなく値に基づいて。次のような配列を考えてみましょう:

$messages = [312, 401, 1599, 3, ...];
ログイン後にコピー

この配列の値は一意であるため、キーを知らずに特定の値を持つ要素を選択的に削除するにはどうすればよいでしょうか?

解決策: array_search() と unset() の使用

PHP には、この目的のために 2 つの便利な関数、array_search() と unset() が用意されています。 unset()。これらの関数を組み合わせると、要素のキーを検索し、それを配列から削除できます。その仕組みは次のとおりです:

if (($key = array_search($del_val, $messages)) !== false) {
    unset($messages[$key]);
}
ログイン後にコピー

このコードは、array_search() を使用して、値 $del_val を持つ要素のキーを検索します。キーが見つからない場合、array_search() は FALSE を返します。ただし、厳密な比較演算子 !== を使用して、array_search() が明示的に FALSE を返した場合にのみ式が true と評価されるようにし、false-y 値 (キー 0 など) を回避します。

キーが見つかった場合は、unset() 関数を使用して $messages 配列から要素を削除します。 unset() はキーによって機能することに注意することが重要です。そのため、最初に array_search() からキーを取得する必要があります。

以上がPHP 配列からキーではなく値で要素を削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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