merge()¶
Merges two streaming sources into a single stream, yielding items from both sources.
- class RunOpenCode\Component\Dataset\Operator\Merge¶
- __construct(iterable<TKey1, TValue1> $first, iterable<TKey2, TValue2> $second)¶
- Parameters:
$first –
iterable<TKey1, TValue1>First stream source to iterate over.$second –
iterable<TKey2, TValue2>Second stream source to iterate over.
- getIterator()¶
- Returns:
\Traversable<TKey1|TKey2, TValue1|TValue2>Stream containing keys and values from both sources.
Use cases¶
Combine two stream sources into one.
Example¶
Combine client records from a sharded database to produce a single consolidated report for all clients.
1<?php
2
3$usClients = $usDbConnection->execute('SELECT ...');
4$euClients = $euDbConnection->execute('SELECT ...');
5
6new Stream($usClients)
7 ->merge($euClients);