ホームページ >バックエンド開発 >PHPチュートリアル >PHP が乱数を生成する mt_rand() rand() mt_srand() function_PHP チュートリアル
mt_rand() は、メルセンヌ ツイスター アルゴリズムを使用してランダムな整数を返します。
文法
mt_rand(最小、最大)の説明
オプションの引数 min と max が指定されていない場合、mt_rand() は 0 から rand_max までの擬似乱数を返します。たとえば、5 から 15 までの範囲の乱数が必要な場合は、mt_rand(5, 15) を使用します。
*/
echo mt_rand(); //乱数を生成します
echo "
";
echo mt_rand(); //乱数を生成します
echo "
";
echo mt_rand(10,100); //10~00の範囲の乱数を生成します
/*
mt_srand() はメルセンヌ ツイスター乱数ジェネレーターをシードします。
文法
mt_srand(seed) パラメータの説明
種が必要です。シードを使用して乱数ジェネレーターをシードします。
手順
PHP チュートリアル バージョン 4.2.0 以降、シード パラメータはオプションになり、この項目が空の場合は定数が設定されます。
*/
function make_seed() //乱数シードを生成する
{
list($usec,$sec)=explode(' ',microtime()); // 現在のミリ秒数を分割します
Return(float) $sec+((float)$usec*100000) //戻り値
}
mt_srand(make_seed()); //乱数生成器のシード
$randval=mt_rand(); //乱数を生成します
echo $randval; // 結果を出力します
/*
rand() 関数はランダムな整数を返します。
文法
rand(min,max) パラメータの説明
min、max はオプションです。乱数を生成する範囲を指定します。
手順
オプションの引数 min と max が指定されていない場合、 rand() は 0 から rand_max までの擬似乱数の整数を返します。たとえば、5 から 15 までの範囲の乱数が必要な場合は、rand(5, 15) を使用します。
*/
echo rand() //乱数を生成します
echo "
";
echo rand(); //乱数を生成します
echo "
";
echo rand(5,15); //5~15の範囲の乱数を生成します
/*
注: 一部のプラットフォーム (Windows など) では、rand_max は 32768 のみです。必要な範囲が 32768 より大きい場合は、min パラメーターと max パラメーターを指定して rand_max より大きい数値を生成するか、代わりに mt_rand() の使用を検討してください
*/