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

# mt_rand

(PHP 3>= 3.0.6, PHP 4 )

mt_rand -- 改良型乱数値を生成する

## 説明

int mt_rand ( int `[min]`, int `[max]`)

古いlibcの多くの乱数発生器は、怪しげであるか特性が不明であったり し、また低速でした。デフォルトでは、PHP は rand() においてlibcの乱数発生器を使用します。 mt_rand() 関数は、その代替品となるものです。 この関数は、既知の特性を有する乱数生成器である Mersenne Twister を使用し、暗号用途に適した乱数を生成します。 この関数は、平均的な libc の相当品よりも 4 倍高速です。 Mersenne Twister のホームページは、http://www.math.keio.ac.jp/~matumoto/emt.html にあります。 MT ソースの最適化された版は、http://www.scp.syr.edu/~marc/hawk/twister.html にて入手可能です。

オプションの引数 `min`,`max`を付けずにコー ルした場合、mt_rand() は 0 から `RAND_MAX`の間の擬似乱数値を返します。 例えば、5から15まで(端点を含む)の間の乱数値を得たい場合には、 `mt_rand(5,15)` として下さい。

使用する前にmt_srand() により乱数生成器にシー ドを与えることを忘れないようにして下さい。

> 注意 3.0.7より前のバージョンでは、`max`の意味は `range`でした。これらのバージョンにおいて 同じ結果を得るために簡単な例を示すと、5から15までの乱数を得たい 場合には `mt_rand (5, 11)`とする必要があります。

mt_srand(), mt_getrandmax(), srand(), rand() , getrandmax() も参照下さい。

前のページ | ホーム | 次のページ
mt_getrandmax | 上に戻る | mt_srand