You are here

public function MinorUnitsConverter::fromMinorUnits in Price 2.x

Same name and namespace in other branches
  1. 2.0.x src/MinorUnitsConverter.php \Drupal\price\MinorUnitsConverter::fromMinorUnits()

Converts an amount in "minor unit" to a decimal amount.

For example, 999 USD becomes 9.99.

Parameters

int|string $amount: The amount in minor unit.

string $currency_code: The currency code.

Return value

\Drupal\price\Price The decimal price.

Overrides MinorUnitsConverterInterface::fromMinorUnits

File

src/MinorUnitsConverter.php, line 32

Class

MinorUnitsConverter
Default implementation of the minor units converter.

Namespace

Drupal\price

Code

public function fromMinorUnits($amount, $currency_code) : Price {
  $fraction_digits = $this->currencyRepository
    ->getDefaultFractionDigits($currency_code);
  if ($fraction_digits > 0) {
    $amount = Calculator::divide((string) $amount, pow(10, $fraction_digits), $fraction_digits);
  }
  return new Price((string) $amount, $currency_code);
}