mt_getrandmax

(PHP 4, PHP 5, PHP 7)

mt_getrandmax乱数値の最大値を表示する

説明

mt_getrandmax ( void ) : int

mt_rand() のコールにより返される最大の値を返します。

返り値

mt_rand() を引数なしでコールしたときに取得できる乱数の最大値を返します。 mt_rand()max に指定する値をこの値以下にしておけば、結果がスケールアップされて無作為性が低下することを避けられます。

例1 ランダムな浮動小数点数の算出

<?php
function randomFloat($min 0$max 1) {
    return 
$min mt_rand() / mt_getrandmax() * ($max $min);
}

var_dump(randomFloat());
var_dump(randomFloat(220));
?>

上の例の出力は、 たとえば以下のようになります。

float(0.91601131712832)
float(16.511210331931)

参考

  • mt_rand() - メルセンヌ・ツイスター乱数生成器を介して乱数値を生成する
  • mt_srand() - メルセンヌ・ツイスター乱数生成器にシードを指定する
  • getrandmax() - 乱数の最大値を取得する

add a note add a note

User Contributed Notes 1 note

up
20
bishop at php dot net
4 years ago
The upper-bound of this value is platform-independent.  PHP implements the 32-bit version of the Mersenne Twister ("mt"), so the maximum possible value is 2**31 - 1 (2147483647).
To Top