(PHP 8 >= 8.2.0)
Random\Engine\PcgOneseq128XslRr64::__construct — 128 ビットのステートと XSL RR 変換を使う、新しいPCGエンジンを作成する
この関数は、 現在のところ詳細な情報はありません。引数のリストのみが 記述されています。
seed
が文字列で、長さが16バイトでなかった場合、
ValueError がスローされます。
例1 Random\Engine\PcgOneseq128XslRr64::__construct() の例
<?php
// ランダムな128ビットのシードを使います。
$e = new \Random\Engine\PcgOneseq128XslRr64();
$r = new \Random\Randomizer($e);
?>
例2 文字列からシードを作る
<?php
$string = "My string seed";
// $string を128ビットのシードに変換するために、
// SHA-256 を切り捨てる形で文字列をハッシュ化し、バイナリで出力します。
// 同じ文字列を使うと、同じランダムなシーケンスが生成されます。
$e = new \Random\Engine\PcgOneseq128XslRr64(
substr(hash('sha256', $string, binary: true), 0, 16)
);
echo bin2hex($e->generate()), "\n";
?>
上の例の出力は以下となります。
8333ef59315b16d8