证件照排版 | 在线计算器 | 在线算命 | 纸张生成器 | 大乐透机选器 | 双色球机选器 | 股票买卖计算 | 奖状生成器 | 今年过去多少天 | 天数相差计算 | 番茄时钟 | AI提示词 | 2048游戏 | 华容道游戏 | 退休年龄计算
查询

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函数
分享链接