public function setTokens(array $tokens) { $this->tokens = array_unique_union($this->tokens, $tokens); }
/** * {@inheritdoc} */ public function union(ListInterface $list) { $this->executeIterator(); return new ArrayList(array_unique_union($this->items, $list->all())); }
<?php use Wandu\Fastelper\Bench; require __DIR__ . '/../vendor/autoload.php'; $x = []; $y = []; for ($i = 0; $i < 1000; $i++) { if (rand(0, 100) === 0) { $x[] = $i; } if (rand(0, 100) === 0) { $y[] = $i; } } echo "x : ", count($x), "\n"; echo "y : ", count($y), "\n"; shuffle($x); shuffle($y); $bench = new Bench(); $bench->run(function () use(&$x, &$y) { return array_unique(array_merge($x, $y)); }); $bench->run(function () use(&$x, &$y) { return array_unique_union($x, $y); });
public function testUniqueUnion() { $this->assertEqualSet([1, 2, 4, 5], array_unique_union([1, 4, 5, 5, 5], [1, 2])); }