查詢

Ds\Map::filter()函式—用法及示例

「 建立一個新的對映物件,其中僅包含滿足指定回撥函式條件的鍵值對 」


函式名稱:Ds\Map::filter()

函式適用版本:PHP 7.0 及更高版本

函式描述:該函式用於建立一個新的對映物件,其中僅包含滿足指定回撥函式條件的鍵值對。

用法:

public function filter(callable $callback): Ds\Map

該函式接受一個回撥函式作為引數,並返回一個新的 Ds\Map 物件,其中包含滿足指定條件的鍵值對。

引數:

  • $callback:一個回撥函式,用於對每個鍵值對進行條件判斷。該回撥函式應接受兩個引數:鍵和值,並返回一個布林值。如果返回值為 true,鍵值對將包含在新的對映物件中;如果返回值為 false,則被過濾掉。

返回值:一個新的 Ds\Map 物件,其中只包含滿足指定回撥函式條件的鍵值對。

示例:

<?php
$map = new Ds\Map([1 => 'apple', 2 => 'banana', 3 => 'cherry']);

// 建立一個新的對映物件,僅包含以奇數為鍵的鍵值對
$filteredMap = $map->filter(function ($key, $value) {
    return $key % 2 !== 0;
});

print_r($filteredMap);
?>

輸出:

Ds\Map Object
(
    [0] => Ds\Pair Object
        (
            [key] => 1
            [value] => apple
        )

    [1] => Ds\Pair Object
        (
            [key] => 3
            [value] => cherry
        )
)

在上面的示例中,我們建立了一個包含三個鍵值對的 Ds\Map 物件。然後,我們使用 filter() 函式來建立一個新的對映物件 $filteredMap,其中只包含以奇數為鍵的鍵值對。在輸出中可以看到,$filteredMap 中的鍵值對為 (1, 'apple')(3, 'cherry'),而其中的 (2, 'banana') 則被過濾掉了。

補充糾錯
上一個函式: Ds\Map::hasKey()函式
下一個函式: Ds\Map::hasValue()函式
熱門PHP函式
分享連結