(PHP 7, PHP 8)
random_bytes — Get cryptographically secure random bytes
$length
): stringGenerates an arbitrary length string of cryptographic random bytes that are suitable for cryptographic use, such as when generating salts, keys or initialization vectors.
The sources of randomness used for this function are as follows:
Note: Although this function was added to PHP in PHP 7.0, a » userland implementation is available for PHP 5.2 to 5.6, inclusive.
length
The length of the random string that should be returned in bytes; must be 1
or greater.
A string containing the requested number of cryptographically secure random bytes.
length
is less than 1
,
a ValueError will be thrown.
Version | Description |
---|---|
8.2.0 | In case of a CSPRNG failure, this function will now throw a Random\RandomException. Previously a plain Exception was thrown. |
Example #1 random_bytes() example
<?php
$bytes = random_bytes(5);
var_dump(bin2hex($bytes));
?>
The above example will output something similar to:
string(10) "385e33f741"