Manuel PHP
Précédent |  | Suivant

# XXXVI. GMP

Ces fonctions vous permettent de travailler avec des nombres de taille arbitraire, en utilisant la librairie GNU MP. Pour pouvoir y accéder, vous devez compiler PHP avec le support GMP en utilisant l'option `--with-gmp`.

Vous pouvez télécharger GMP sur le site de http://www.swox.com/gmp/. Ce site propose aussi un manuel GMP.

Vous devez utiliser GMP version 2 ou plus récent pour utiliser ces fonctions. Certaines d'entre elles peuvent requérir une version encore plus récente de GMP.

Ces fonctions ont été ajoutées en PHP 4.0.4.

> Note : La majorité des fonctions GMP acceptent des nombres GMP comme arguments, définis ci-dessous comme `resource`. Cependant, la plupart de ces fonctions acceptent aussi des nombres et des chaînes à partir du moment où on peut les convertir en nombre. Si une fonction utilisant les entiers est plus rapide, elle sera automatiquement appelée si les arguments fournis sont des entiers. Cela se fait de manière transparente : vous pouvez donc utiliser des entiers avec les fonctions GMP sans perte de vitesse.

> Voir aussi gmp_init().

Exemple 1. Factorielle avec GMP
    <?php
    function fact($x) {
      if($x <= 1)
            return 1;
      else
            return gmp_mul($x,fact($x-1));
    }
    print gmp_strval(fact(1000))."\n";
    ?>

Cet exemple va calculer factorielle de 1000 (un plutôt grand nombre) très vite.

Précédent | Sommaire | Suivant
textdomain | Niveau supérieur | gmp_init