# GNU Multiple Precision

&reftitle.intro;

These functions allow for arbitrary-length integers to be worked with using the GNU MP library.

Most GMP functions accept GMP number arguments. These are shown in this documentation as `GMP` objects. Most of these functions will also accept numeric and string arguments, so long as it is possible to convert the latter to a number. Also, if there is a more performant function that can operate on the arguments (integers only), then it will be used instead (this is done transparently). See also the `gmp_init` function.

From PHP 5.6 onwards, the arithmetic, bitwise, and comparison operators may be used with the `GMP` objects returned from `gmp_init` and other GMP functions.

Large integers must be specified as strings - otherwise, PHP will coerce them to floats, resulting in a loss of precision.

This extension is available on Windows platforms.

&reference.gmp.setup; &reference.gmp.constants; &reference.gmp.examples; &reference.gmp.reference; &reference.gmp.gmp;