(PHP 5 >= 5.1.2, PHP 7, PHP 8, PECL hash >= 1.1)
hash_init — 初始化增量哈希运算上下文
$algo
, int $options
= 0
, string $key
= null
) : HashContext
algo
要使用的哈希算法名称,例如:"md5","sha256","haval160,4" 等。 如何获取受支持的算法清单,请参见 hash_algos()。
options
进行哈希运算的可选设置,目前仅支持一个选项:HASH_HMAC
。
当指定此选项的时候,必须 指定 key
参数。
key
当 options
参数为 HASH_HMAC
时,
使用此参数传入进行 HMAC 哈希运算时的共享密钥。
返回哈希运算上下文对象,以供 hash_update(), hash_update_stream(),hash_update_file(), 和 hash_final() 函数使用。
版本 | 说明 |
---|---|
7.2.0 | 当使用 HASH_HMAC 选项的时候,不再支持非加密的哈希函数(adler32,crc32,crc32b,fnv132,fnv1a32,fnv164,fnv1a64,joaat)。 |
7.2.0 | 返回 HashContext 对象,不再返回资源类型。 |
Example #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);
?>
以上例程会输出:
5c6ffbdd40d9556b73a21e63c3e0e904