(PHP 5 >= 5.1.2, PHP 7, PHP 8, PECL hash >= 1.1)
hash_init — 初始化增量哈希運算上下文
$algo
, int $options
= 0, string $key
= null
): HashContext
algo
要使用的哈希算法名稱(chēng),例如:"md5","sha256","haval160,4" 等。 如何獲取受支持的算法清單,請參見(jiàn) hash_algos()。
options
進(jìn)行哈希運算的可選設置,目前僅支持一個(gè)選項:HASH_HMAC
。
當指定此選項的時(shí)候,必須 指定 key
參數。
key
當 options
參數為 HASH_HMAC
時(shí),
使用此參數傳入進(jìn)行 HMAC 哈希運算時(shí)的共享密鑰。
返回哈希運算上下文對象,以供 hash_update(), hash_update_stream(),hash_update_file(), 和 hash_final() 函數使用。
版本 | 說(shuō)明 |
---|---|
7.2.0 | 當使用 HASH_HMAC 選項的時(shí)候,不再支持非加密的哈希函數(adler32,crc32,crc32b,fnv132,fnv1a32,fnv164,fnv1a64,joaat)。 |
7.2.0 | 返回 HashContext 對象,不再返回資源類(lèi)型。 |
示例 #1 增量哈希運算例程
<?php
$ctx = hash_init('md5');
hash_update($ctx, 'The quick brown fox ');
hash_update($ctx, 'jumped over the lazy dog.');
echo hash_final($ctx);
?>
以上例程會(huì )輸出:
5c6ffbdd40d9556b73a21e63c3e0e904