����JFIF��x�x����'
Server IP : 66.29.137.217 / Your IP : 3.142.53.191 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/Formatter/ |
Upload File : |
<?php declare(strict_types=1); namespace Money\Formatter; use Money\Currencies; use Money\Money; use Money\MoneyFormatter; use NumberFormatter; use function assert; use function str_pad; use function strlen; use function substr; /** * Formats a Money object using intl extension. */ final class IntlMoneyFormatter implements MoneyFormatter { private NumberFormatter $formatter; private Currencies $currencies; public function __construct(NumberFormatter $formatter, Currencies $currencies) { $this->formatter = $formatter; $this->currencies = $currencies; } public function format(Money $money): string { $valueBase = $money->getAmount(); $negative = $valueBase[0] === '-'; if ($negative) { $valueBase = substr($valueBase, 1); } $subunit = $this->currencies->subunitFor($money->getCurrency()); $valueLength = strlen($valueBase); if ($valueLength > $subunit) { $formatted = substr($valueBase, 0, $valueLength - $subunit); $decimalDigits = substr($valueBase, $valueLength - $subunit); if (strlen($decimalDigits) > 0) { $formatted .= '.' . $decimalDigits; } } else { $formatted = '0.' . str_pad('', $subunit - $valueLength, '0') . $valueBase; } if ($negative) { $formatted = '-' . $formatted; } $formatted = $this->formatter->formatCurrency((float) $formatted, $money->getCurrency()->getCode()); assert($formatted !== ''); return $formatted; } }