2017 © Pedro Peláez
 

library number-to-string-converter

Converts numbers to text

image

sfadles/number-to-string-converter

Converts numbers to text

  • Tuesday, October 3, 2017
  • by sfadless
  • Repository
  • 1 Watchers
  • 0 Stars
  • 4 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 2 Versions
  • 0 % Grown

The README.md

NumberToStringConverter

Converts numbers to strings, (*1)

Documentation

Basic usage

use Sfadless\NumberToStringConverter\Language\Russian\RussianLanguageFactory;
use Sfadless\NumberToStringConverter\NumberToStringConverter;

$factory = new RussianLanguageFactory();
$russianLanguage = $factory->create();

$converter = new NumberToStringConverter($russianLanguage);

$converter->convert(33.27); //тридцать три рубля двадцать семь копеек

Output templates

You can control output with templates. Default template is "%i_string% %i_currency% %f_string% %f_currency%". It means, that for number 11.12 default output will be "одиннадцать рублей двенадцать копеек". Available variables in template by default are %i_string%, %i_value%, %i_currency%, %f_string%, %f_value%, %f_currency%., (*2)

$template = '%i_value% %i_currency% %f_value% %f_currency%';
$converter->convert(12.22, ['template' => $template]); // 12 рублей 22 копейки

Adding variables in templates

If you need, you can add your own variables in template, where you have full control of output., (*3)

use Sfadless\NumberToStringConverter\Language\Russian\Output\Output;
use Sfadless\NumberToStringConverter\Language\Russian\Output\OutputVariable;

$variable = new OutputVariable('i_short_curency', function (Output $output) {
    return mb_substr($output->getInteger()->getCurrency(), 0, 3);
});

$template = '%i_value% %i_short_curency%';

$converter->convert(12, ['template' => $template, 'variables' => [$variable]]); // 12 руб

Change currency

By default, currency is rubles. You can create any currency you like., (*4)

use Sfadless\NumberToStringConverter\Language\Russian\Currency;
use Sfadless\NumberToStringConverter\Language\Russian\Declension\Declension;

$currency = new Currency(
    new Declension('доллар', 'доллара', 'долларов', Declension::GENDER_M),
    new Declension('цент', 'цента', 'центов', Declension::GENDER_M)
);

$converter->convert(3.05, ['currency' => $currency]); //три доллара пять центов

The Versions

03/10 2017

dev-master

9999999-dev

Converts numbers to text

  Sources   Download

The Requires

  • php ^5.4 || ^7.0

 

The Development Requires

02/10 2017

1.0

1.0.0.0

Converts numbers to text

  Sources   Download

The Requires

  • php ^5.4 || ^7.0