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

 Methods

Redirect all public method calls to the wrapped extension object.

__call(string $methodName, array $args) : mixed

Parameters

$methodName

string

$args

array

Exceptions

\Zend_Crypt_Math_BigInteger_Exception

Returns

mixed

Constructor; a Factory which detects a suitable PHP extension for arbitrary precision math and instantiates the suitable wrapper object.

__construct(string $extension = null

Parameters

$extension

string

Exceptions

\Zend_Crypt_Math_BigInteger_Exception

_loadAdapter()

_loadAdapter(string $extension = null

Parameters

$extension

string

Exceptions

\Zend_Crypt_Math_BigInteger_Exception

 Properties

 

Holds an instance of one of the three arbitrary precision wrappers.

$_math : \Zend_Crypt_Math_BigInteger_Interface

Default

null