$items * @param callable(ItemType $item, int|string $key):array $mapper * * @return mixed[] */ function flat_map( array $items, callable $mapper ): array { $chunks = array(); foreach ( $items as $key => $item ) { $chunk = $mapper( $item, $key ); $chunks = array_merge( $chunks, $chunk ); } return $chunks; }