Support for arbitrary precision mathematics in PHP.
Zend_Crypt_Math_BigInteger is a wrapper across three PHP extensions: bcmath, gmp and big_int. Since each offer similar functionality, but availability of each differs across installations of PHP, this wrapper attempts to select the fastest option available and encapsulate a subset of its functionality which all extensions share in common.
This class requires one of the three extensions to be available. BCMATH while the slowest, is available by default under Windows, and under Unix if PHP is compiled with the flag "--enable-bcmath". GMP requires the gmp library from http://www.swox.com/gmp/ and PHP compiled with the "--with-gmp" flag. BIG_INT support is available from a big_int PHP library available from only from PECL (a Windows port is not available).
category | Zend |
---|---|
package | Zend_Crypt |
copyright | Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com) |
license | New BSD License |
inherited_from | \Zend_Crypt_Math_BigInteger |
__call(string $methodName, array $args) : mixed
string
array
\Zend_Crypt_Math_BigInteger_Exception |
---|
mixed
__construct(string $extension = null
)
string
\Zend_Crypt_Math_BigInteger_Exception |
---|
btwoc(string $long) : string
string
string
fromBinary(string $binary) : string
string
string
rand(string|integer $minimum, string|integer $maximum) : string
Will attempt to read from a systems RNG if it exists or else utilises a simple random character to maximum length process. Simplicity is a factor better left for development...
string
integer
string
integer
string
randBytes(integer $length, boolean $strong = false
) : string
integer
boolean
string
randInteger(integer $min, integer $max, boolean $strong = false
) : integer
integer
integer
boolean
integer
toBinary(string $integer) : string
string
string
_loadAdapter(string $extension = null
)
string
\Zend_Crypt_Math_BigInteger_Exception |
---|
$_math : \Zend_Crypt_Math_BigInteger_Interface
null