(PECL OAuth >= 1.0.0)
OAuthProvider::generateToken — 生成一個(gè)隨機令牌
$size
, bool $strong
= false): string生成一個(gè)偽隨機字節的 字符串 。
size
想要的令牌長(cháng)度,單位為字節。
strong
設置為 true
則意味著(zhù)將對熵使用 /dev/random
,否則使用非阻塞的 /dev/urandom
。在 Windows 平臺將忽略此參數。
生成的令牌,一個(gè)以字節為單位的 字符串 。
如果 strong
參數為 true
, 則當回退到用 rand() 來(lái)實(shí)現填充剩余的隨機字節的時(shí)候,將觸發(fā)一個(gè) E_WARNING
級別的錯誤(比如,當最初找不到足夠的隨機數據的時(shí)候)。
示例 #1 OAuthProvider::generateToken() 例子
<?php
$p = new OAuthProvider();
$t = $p->generateToken(4);
echo strlen($t), PHP_EOL;
echo bin2hex($t), PHP_EOL;
?>
以上例程的輸出類(lèi)似于:
4 b6a82c27
注意:
當系統沒(méi)有足夠的隨機數據可用的時(shí)候,此函數將使用 PHP 內部的 rand() 來(lái)實(shí)現填充剩余的隨機字節。