You are here

public function IntegerFormatter::format in Currency 7.2

Formats a number.

Parameters

integer|string $number:

Return value

string

1 method overrides IntegerFormatter::format()
DecimalFormatter::format in currency/vendor/bartfeenstra/cldr/src/BartFeenstra/CLDR/DecimalFormatter.php
Overrides parent::format().

File

currency/vendor/bartfeenstra/cldr/src/BartFeenstra/CLDR/IntegerFormatter.php, line 345
Contains class \BartFeenstra\CLDR\IntegerFormatter.

Class

IntegerFormatter
Formats an integer according CLDR number pattern guidelines.

Namespace

BartFeenstra\CLDR

Code

public function format($number) {
  if ((int) $number != $number) {
    throw new \InvalidArgumentException('Number has no valid integer value.');
  }
  $sign = (int) ($number < 0);
  $number = abs($number);
  $digits = str_split($number);
  $symbols = $this
    ->cloneNumberPatternSymbols($this->symbols[$sign]);
  $this
    ->process($symbols[$sign], $digits);
  $this
    ->replacePlaceholders($symbols[$sign]);
  $output = '';
  foreach ($symbols[$sign] as $symbol) {
    $output .= !is_null($symbol->replacement) ? $symbol->replacement : $symbol->symbol;
  }
  return $output;
}