BigNum-PHP
Brick\Math
Our great sponsors
BigNum-PHP | Brick\Math | |
---|---|---|
0 | 5 | |
14 | 1,267 | |
- | 2.2% | |
0.0 | 3.5 | |
about 4 years ago | 6 months ago | |
PHP | PHP | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
BigNum-PHP
We haven't tracked posts mentioning BigNum-PHP yet.
Tracking mentions began in Dec 2020.
Brick\Math
- Weekly "ask anything" thread
-
What are the latest thoughts on storing and working with very large and very small financial transactions?
I decided to use https://github.com/brick/math and store the amount as a string in the database. My project use NANO, so that's 30 decimal points to keep. Number type column is not the choice at all.
-
Vote for enums in PHP 8.1 has started — looking good so far!
There are many use cases where enums don't need to be backed by a scalar. I'm thinking of brick/math's RoundingMode for example: you use these in code, but never store/serialize them really.
-
(int) (round(19.33, 2) * 100) = 1932 - can someone please explain this to me?
Besides, using an arbitrary-precision library gives you an unlimited number of digits, and, in the case of brick/math, many more rounding modes to choose from. And predictable ones.
TL;DR: don't use floats if you ever need to rely on rounding. Use an arbitrary-precision arithmetic library such as brick/math. Example:
What are some alternatives?
PHP Parser - A PHP parser written in PHP
Brick\Money - A money and currency library for PHP
bigint-wrapper-php - Fast common interface for php_gmp and php_bcmath modules
break_infinity.js - A replacement for decimal.js for incremental games who want to deal with very large numbers (bigger in magnitude than 1e308, up to as much as 1e(9e15) ) and want to prioritize speed over accuracy.
PHP Units of Measure - A library for handling physical quantities and the units of measure in which they're represented.
decimal-object - Decimal handling as value object instead of plain strings.
LibPhoneNumber for PHP - PHP version of Google's phone number handling library
Math - A PHP 5.3+ mathematics library, providing functionality for large numbers
ip - Immutable value object for IPv4 and IPv6 addresses, including helper methods and Doctrine support.
Numbers PHP - Advanced Mathematics Library for PHP (port of Numbers.js)
Numbase - Arbitrary number base converter.