(PHP 8 >= 8.2.0)
Random\Engine\Xoshiro256StarStar::__construct — 构造一个新的 xoshiro256** 引擎
seed
的长度不是 32 字节,则会抛出 ValueError。
seed
由 32 个 NUL 字节("\x00"
)组成,则会抛出 ValueError。
示例 #1 Random\Engine\Xoshiro256StarStar::__construct() 示例
<?php
// 使用随机的 256 位种子。
$e = new \Random\Engine\Xoshiro256StarStar();
$r = new \Random\Randomizer($e);
?>
示例 #2 从 字符串 推导出种子
<?php
$string = "My string seed";
// 使用二进制输出的 SHA-256 对字符串进行哈希以将
// $string 转换为 256 位种子。使用相同的字符串将导致
// 相同的随机序列。
$e = new \Random\Engine\Xoshiro256StarStar(
hash('sha256', $string, binary: true)
);
echo bin2hex($e->generate()), "\n";
?>
以上示例将输出
6e013453678388c2