Ds\Map::filter

(PECL ds >= 1.0.0)

Ds\Map::filter Crear un nuevo mapa utilizando un callable para determinar qué pares incluir

Descripción

public Ds\Map::filter(callable $callback = ?): Ds\Map

Crear un nuevo mapa utilizando un callable para determinar qué pares incluir.

Parámetros

callback

callback(mixed $key, mixed $value): bool

Un callable opcional que devuelve true si el par debe ser incluido, false en caso contrario.

Si no se proporciona ninguna función de retrollamada, solo se incluirán los valores que sean true (ver conversión en booléen).

Valores devueltos

Un nuevo mapa que contiene todos los pares para los cuales el callback ha devuelto true, o todas las claves que se convierten en true si no se proporciona un callback.

Ejemplos

Ejemplo #1 Ejemplo de Ds\Map::filter() utilizando una función de retrollamada

<?php
$map
= new \Ds\Map(["a", "b", "c", "d", "e"]);

var_dump($map->filter(function($key, $value) {
return
$key % 2 == 0;
}));
?>

El resultado del ejemplo sería algo similar a:

object(Ds\Map)#3 (3) {
  [0]=>
  object(Ds\Pair)#2 (2) {
    ["key"]=>
    int(0)
    ["value"]=>
    string(1) "a"
  }
  [1]=>
  object(Ds\Pair)#4 (2) {
    ["key"]=>
    int(2)
    ["value"]=>
    string(1) "c"
  }
  [2]=>
  object(Ds\Pair)#5 (2) {
    ["key"]=>
    int(4)
    ["value"]=>
    string(1) "e"
  }
}

Ejemplo #2 Ejemplo de Ds\Map::filter() sin función de retrollamada

<?php
$map
= new \Ds\Map(["a" => 0, "b" => 1, "c" => true, "d" => false]);

var_dump($map->filter());
?>

El resultado del ejemplo sería algo similar a:

object(Ds\Map)#2 (3) {
  [0]=>
  int(1)
  [1]=>
  string(1) "a"
  [2]=>
  bool(true)
}
add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top