HH\Vector::filterWithKey

Returns a Vector containing the values of the current Vector that meet a supplied condition applied to its keys and values

public function filterWithKey(
  (function(int, Tv): bool) $callback,
): Vector<Tv>;

filterWithKey()'s result contains only values whose key/value pairs satisfy the provided criterion; unlike mapWithKey(), which contains results derived from every key/value pair in the original Vector.

Parameters

  • (function(int, Tv): bool) $callback

Returns

  • Vector<Tv> - A Vector containing the values of the current Vector for which a user-specified test condition returns true when applied to the corresponding key/value pairs.

Examples

$v = Vector {'red', 'green', 'blue', 'yellow', 'purple'};

// Only include elements with an odd index
$odd_elements = $v->filterWithKey(($index, $color) ==> ($index % 2) !== 0);

\var_dump($odd_elements);