public static function randomInts($numInts, $cb, $pri = 0, $hang = false)
{
static::randomBytes(PHP_INT_SIZE * $numInts, function ($bytes) use($cb, $numInts) {
if ($bytes === false) {
$cb(false);
return;
}
$ints = [];
for ($i = 0; $i < $numInts; ++$i) {
$thisInt = 0;
for ($j = 0; $j < PHP_INT_SIZE; ++$j) {
$thisInt = $thisInt << 8 | ord($bytes[$i * PHP_INT_SIZE + $j]) & 0xff;
}
// Absolute value in two's compliment (with min int going to zero)
$thisInt = $thisInt & PHP_INT_MAX;
$ints[] = $thisInt;
}
$cb($ints);
}, $pri, $hang);
}