函式名稱:openssl_random_pseudo_bytes()
適用版本:PHP 5 >= 5.3.0, PHP 7
函式描述:openssl_random_pseudo_bytes() 生成指定長度的偽隨機位元組串。
用法:
openssl_random_pseudo_bytes(int $length [, bool &$crypto_strong = false]): string|false
引數:
- $length:生成的位元組串長度。
- &$crypto_strong(可選):一個引用引數,用於指示是否是一個強隨機數。如果設定為 true,則生成的位元組串是用加密安全的隨機數生成器生成的,否則是用偽隨機數生成器生成的。
返回值:
- 成功時,返回生成的位元組串。
- 失敗時,返回 false。
示例:
$random_bytes = openssl_random_pseudo_bytes(32);
if ($random_bytes === false) {
echo "生成隨機位元組串失敗";
} else {
echo bin2hex($random_bytes); // 將位元組串轉換為十六進位制字串輸出
}
在上述示例中,我們使用 openssl_random_pseudo_bytes() 函式生成了一個長度為 32 位元組的隨機位元組串。然後,我們使用 bin2hex() 函式將位元組串轉換為十六進位制字串,並輸出結果。如果生成位元組串失敗,則輸出相應的錯誤訊息。
請注意,openssl_random_pseudo_bytes() 函式生成的是偽隨機位元組串,而不是真正的加密安全的隨機數。如果需要更高安全性的隨機數,建議使用其他加密安全的隨機數生成器。