Slučování array-hashu, nějaká elegantní cesta?

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
joker0cz
Člen | 16
+
0
-

Zdravím,

heledám nějakou pěknou cestu jak sloučit dva Nette ArrayHashe, nevíte o něčem? Lze vůbec tohle nějak provést aniž bych to musel rozkládat na array sloučit a znovu převádět na Arrayhash?

Díky ;)

Vojtěch Dobeš
Gold Partner | 1316
+
0
-

Podle API této třídy to zcela určitě „nějak“ nejde :). Ale jde to v plain simple PHP:

$mergedHash = Nette\ArrayHash::from(array_merge(
	iterator_to_array($hash1),
	iterator_to_array($hash2)
));
Majkl578
Moderator | 1364
+
0
-

Šlo by to možná i pomocí AppendIteratoru:

$iterator = new \AppendIterator();
$iterator->append($arrayHash1);
$iterator->append($arrayHash2);

$mergedHash = Nette\ArrayHash::from($iterator);