【PHP8.x】mt_rand関数の使い方

作成日: 更新日:

『mt_rand関数は、メルセンヌ・ツイスター法というアルゴリズムを用いて、質の高いランダムな整数を生成する関数です。PHPで古くからあるrand関数よりも高速で、より優れた乱数特性を持つため、こちらの使用が推奨されています。この関数は主に2通りの使い方があります。まず、引数を指定せずにmt_rand()と呼び出すと、0からmt_getrandmax()関数で取得できる、その環境での最大乱数値までの範囲でランダムな整数を返します。もう一つの方法は、mt_rand(min, max)のように2つの整数を引数として指定するものです。この場合、第一引数のminから第二引数のmaxまでの範囲(両端の値も含む)のランダムな整数が返されます。例えば、サイコロの目のように1から6までの値が欲しい場合はmt_rand(1, 6)と記述します。通常、プログラムを実行するたびに異なる乱数が生成されますが、mt_srand()関数で乱数の種(シード)を事前に設定することで、乱数の発生系列を固定し、常に同じ順序で乱数を再現させることも可能です。これはプログラムのテストなどで役立ちます。

基本的な使い方

構文(syntax)

mt_rand(int $min, int $max): int

引数(parameters)

?int $min = null, ?int $max = null

  • ?int $min: 生成する乱数の最小値を指定します。省略した場合、0が使用されます。
  • ?int $max: 生成する乱数の最大値を指定します。省略した場合、PHP_INT_MAX(PHPで扱える最大の整数)が使用されます。

戻り値(return)

int

指定された範囲内のランダムな整数を返します。

【PHP8.x】mt_rand関数の使い方 | いっしー@Webエンジニア