fyre / formatter
A formatting library.
Requires
- fyre/config: ^4.1
- fyre/datetime: ^3.0
- fyre/typeparser: ^5.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.59
- fyre/php-cs-fixer-config: ^1.0
- phpunit/phpunit: ^11
README
FyreFormatter is a free, open-source formatting library for PHP.
Table Of Contents
Installation
Using Composer
composer require fyre/formatter
In PHP:
use Fyre\Utility\Formatter;
Basic Usage
$typeParser
is a TypeParser.$config
is a Config.
$formatter = new Formatter($typeParser, $config);
Default configuration options will be resolved from the "App" key in the Config.
$options
is an array containing configuration options.defaultLocale
is a string representing the default locale, and will default to the system default.defaultTimeZone
is a string representing the default time zone, and will default to the system default.defaultCurrency
is a string representing the default currency, and will default to "USD".
$container->use(Config::class)->set('App', $options);
Autoloading
It is recommended to bind the Formatter to the Container as a singleton.
$container->singleton(Formatter::class);
Any dependencies will be injected automatically when loading from the Container.
$formatter = $container->use(Formatter::class);
Methods
Currency
Format a value as a currency string.
$value
is a string or number representing the value to format.$options
is an array containing formatting options.$locale
is a string representing the locale, and will default to the Formatter default locale.$currency
is a string representing the currency, and will default to the Formatter default currency.
$currency = $formatter->currency($value, $options);
Date
Format a DateTime as a date string.
$value
is a DateTime.$options
is an array containing formatting options.$locale
is a string representing the locale, and will default to the Formatter default locale.$timeZone
is a string representing the time zone, and will default to the Formatter default time zone.$format
is a string representing the format, and will default to the TypeParser default date user format.
$date = $formatter->date($value, $options);
Date/Time
Format a DateTime as a date/time string.
$value
is a DateTime.$options
is an array containing formatting options.$locale
is a string representing the locale, and will default to the Formatter default locale.$timeZone
is a string representing the time zone, and will default to the Formatter default time zone.$format
is a string representing the format, and will default to the TypeParser default datetime user format.
$datetime = $formatter->datetime($value, $options);
Get Default Currency
Get the default currency.
$defaultCurrency = $formatter->getDefaultCurrency();
Get Default Locale
Get the default locale.
$defaultLocale = $formatter->getDefaultLocale();
Get Default Time Zone
Get the default time zone.
$defaultTimeZone = $formatter->getDefaultTimeZone();
Number
Format a value as a number string.
$value
is a string or number representing the value to format.$options
is an array containing formatting options.$locale
is a string representing the locale, and will default to the Formatter default locale.
$number = $formatter->number($value, $options);
Percent
Format a value as a percent string.
$value
is a string or number representing the value to format.$options
is an array containing formatting options.$locale
is a string representing the locale, and will default to the Formatter default locale.
$percent = $formatter->percent($value, $options);
Set Default Currency
Set the default currency.
$currency
is a string representing the currency code.
$formatter->setDefaultCurrency($currency);
Set Default Locale
Set the default locale.
$locale
is a string representing the locale.
$formatter->setDefaultLocale($locale);
Set Default Time Zone
Set the default time zone.
$timeZone
is a string representing the time zone.
$formatter->setDefaultTimeZone($timeZone);
Time
Format a DateTime as a time string.
$value
is a DateTime.$options
is an array containing formatting options.$locale
is a string representing the locale, and will default to the Formatter default locale.$timeZone
is a string representing the time zone, and will default to the Formatter default time zone.$format
is a string representing the format, and will default to the TypeParser default time user format.
$time = $formatter->time($value, $options);