ホームページ  >  記事  >  バックエンド開発  >  PHP: 特定のキー値の範囲で配列をフィルターし、キー名を保持する方法は?

PHP: 特定のキー値の範囲で配列をフィルターし、キー名を保持する方法は?

王林
王林オリジナル
2024-05-01 21:39:02364ブラウズ

特定のキー値の範囲で PHP 配列をフィルターし、キー名を保持するにはどうすればよいですか?次の手順に従います。 キー値が指定された範囲内にあるかどうかを確認するコールバック関数を定義します。 array_filter() を呼び出し、コールバック関数と配列をパラメータとして渡します。

PHP: 特定のキー値の範囲で配列をフィルターし、キー名を保持する方法は?

PHP: 特定のキー値の範囲で配列をフィルターし、キー名を保持する方法は?

PHP では、array_filter() 関数を使用して、キー名を維持したまま、特定のキー値の範囲で配列をフィルターできます。この関数は、配列内の各要素を保持するかどうかを決定するコールバック関数を引数として受け取ります。

コールバック関数

コールバック関数は、キーと値の 2 つのパラメータを受け入れる必要があります。要素を保持する必要があるかどうかを示すブール値を返します。

構文

array_filter($array, $callback, $flag = 0);

ここで:

  • $array はフィルタリングされる配列です。
  • $callback は、配列内の各要素を保持するかどうかを決定するコールバック関数です。
  • $flag は、配列内の要素にインデックスを付ける方法を指定するオプションのパラメーターです。

連想配列から特定の範囲内のキー値を持つ要素をフィルターで除外するとします。これを実現する手順は次のとおりです。

  1. キー値が指定された範囲内にあるかどうかを確認するコールバック関数を定義します。
  2. array_filter() を呼び出し、コールバック関数と配列をパラメータとして渡します。

コード

<?php

$array = [
    "a" => 1,
    "b" => 2,
    "c" => 3,
    "d" => 4,
    "e" => 5,
];

// 定义回调函数
$callback = function ($key, $value) {
    return $value >= 2 && $value <= 4;
};

// 按键值范围过滤数组
$filteredArray = array_filter($array, $callback);

// 输出结果
print_r($filteredArray);
?>

出力

Array
(
    [b] => 2
    [c] => 3
    [d] => 4
)

ご覧のとおり、結果の配列にはキー値のみが含まれています。 2 ~ 4 に戻り、キー名は保持されます。

以上がPHP: 特定のキー値の範囲で配列をフィルターし、キー名を保持する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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