A simple package used for formatting a
Money\Money value object.
Money is usually not stored as a float in your database, though your clients/users don't want to see
1000 meaning, 10. This package receives an amount in cents, and displays it according to the given locale with or with the currency symbol.
Want to use this inside a Laravel application? Check out the MoneyFormatter-Laravel package.
$ composer require nwidart/money-formatter
To format money in cents:
$formatter = new MoneyFormatter('en_US'); $formattedMoney = $formatter->format(new Money(1000, new Currency('USD'))); # output : $10.00
Sometimes you may wish to not have the currency symbol, this can be done like so:
$formatter = new MoneyFormatter('en_US'); $formattedMoney = $formatter->formatWithoutCurrency(new Money(1000, new Currency('USD'))); # output : 10.00
This can be useful if your currency selection is a separate dropdown, for instance.
Please see CONTRIBUTING for details.
- Nicolas Widart
- Philip Brown for the inspiration from his Basket package. Decided to extract the MoneyFormatter class to a dedicated package.
- All Contributors
The MIT License (MIT). Please see License File for more information.