azathoth / money
PHP implementation of Fowler's Money pattern
1.2.2
2014-11-16 20:13 UTC
Requires
- php: >=5.3.3
- azathoth/money-math: dev-master
- kdyby/doctrine: 2.1.*
- nette/utils: 2.2.*
Requires (Dev)
- phpunit/phpunit: 4.*
Suggests
- Sylius/SyliusMoneyBundle: Sylius' Symfony2 integration with Money library
- TheBigBrainsCompany/TbbcMoneyBundle: Very complete Symfony2 bundle with support for Twig, Doctrine, Forms, ...
- pink-tie/money-bundle: Pink-Tie's Symfony2 integration with Money library
This package is not auto-updated.
Last update: 2024-12-17 09:30:30 UTC
README
PHP 5.3+ library to make working with money safer, easier, and fun!
"If I had a dime for every time I've seen someone use FLOAT to store currency, I'd have $999.997634" -- Bill Karwin
In short: You shouldn't represent monetary values by a float. Wherever you need to represent money, use this Money value object.
<?php use Money\Money; $fiveEur = Money::EUR(500); $tenEur = $fiveEur->add($fiveEur); list($part1, $part2, $part3) = $tenEur->allocate(array(1, 1, 1)); assert($part1->equals(Money::EUR(334))); assert($part2->equals(Money::EUR(333))); assert($part3->equals(Money::EUR(333)));
The documentation is available at http://money.readthedocs.org
Installation
Install the library using composer. Add the following to your composer.json
:
{ "require": { "mathiasverraes/money": "dev-master" }, "minimum-stability": "dev" }
Now run the install
command.
$ composer.phar install
Integration
See MoneyBundle
or TbbcMoneyBundle
for Symfony integration.