(PHP 5 >= 5.6.3, PHP 7, PHP 8)
gmp_random_bits — 乱数を生成する
乱数を生成します。値は
0
と 2$bits - 1
の間になります。
bits
は0より大きくなければならず、最大値は利用できるメモリの量次第です。
この関数が生成する値は、暗号学的にセキュアではありません。そのため、これを暗号や、戻り値を推測できないことが必須の値として使っては いけません。
暗号学的にセキュアな乱数が必要な場合は、Random\Randomizer を Random\Engine\Secure と一緒に使いましょう。簡単なユースケースの場合、random_int() と random_bytes() 関数が、オペレーティングシステムの CSPRNG を使った、 便利で安全な API を提供します。
bits
生成するビット数
ランダムなGMP数を返します。
bits
が 1
より小さい値の場合、
ValueError がスローされます。
例1 gmp_random_bits() の例
<?php
$rand1 = gmp_random_bits(3); // random number from 0 to 7
$rand2 = gmp_random_bits(5); // random number from 0 to 31
echo gmp_strval($rand1) . "\n";
echo gmp_strval($rand2) . "\n";
?>
上の例の出力は以下となります。
3 15