PHP マニュアル
前のページ |  | 次のページ

# XXXVIGMP 関数

以下の関数により、GNU MP ライブラリを使用して任 意長の整数を使用することが可能になります。これらの関数を利用可能と するには、オプション `--with-gmp` を使用することにより GMPサポートを有効にしてPHP をコンパイルする必要があります。

http://www.swox.com/gmp/ から GMP ライブラリをダウンロード可能です。このサイ トでは、GMP のマニュアルも入手可能です。

これらの関数を使用するには、GMP バージョン 2 以降が必要です。いく つかの関数はより新しいバージョンの GMP ライブラリを必要とする可能性 があります。

これらの関数は、PHP 4.0.4 で追加されました。

> 注意 多くの GMP 関数は、`resource` で定義されたGMP 数 を引数としてとります。しかし、これらの関数の多くは、数値と文字列 の両方を引数として指定可能で、後者は数値に変換することが可能です。 また、整数引数を使用して処理を行うより高速な関数がある場合には、 指定された引数が整数である場合により低速となる関数の代わりに使用 されます。これは透過的に行われるため、結果的にGMP数値を引数とする 全ての関数について整数を使用することが可能です。関数 gmp_init() も参照下さい。

例 1GMP を使用した階乗関数

    <?php
    function fact ($x) {
        if ($x <= 1)
            return 1;
        else
            return gmp_mul ($x, fact ($x-1));
    }

    print gmp_strval (fact (1000)) . "\n";
    ?>

この例は、1000の階乗(非常に大きな数です)を非常に高速に計算します。

前のページ | ホーム | 次のページ
textdomain | 上に戻る | gmp_abs