HH\Set::filter

Returns a Set containing the values of the current Set that meet a supplied condition applied to each value.

Description

public function filter(
  callable $callback,
): Set<Tv>

Returns a Set containing the values of the current Set that meet a supplied condition applied to each value.

Only values that meet a certain criteria are affected by a call to filter(), while all values are affected by a call to map().

Parameters

  • callable $callback - The callback containing the condition to apply to the current Set values.

Return Values

  • Set<Tv> - a Set containing the values after a user-specified condition is applied.

Examples

<?hh

namespace Hack\UserDocumentation\API\Examples\Set\Filter;

$colors = Set {'red', 'green', 'blue', 'yellow'};

// Create a Set of colors that contain the letter 'l'
$l_colors = $colors->filter($color ==> strpos($color, 'l') !== false);
var_dump($l_colors);
Output
object(HH\Set)#3 (2) {
  string(4) "blue"
  string(6) "yellow"
}