(PHP 5 >= 5.1.2, PHP 7, PECL hash >= 1.1)
hash_init — Initialize an incremental hashing context
hash_init ( string $algo [, int $flags = 0 [, string $key = "" ]] ) : HashContext
algo
Name of selected hashing algorithm (i.e. "md5", "sha256", "haval160,4", etc..). For a list of supported algorithms see hash_algos().
flags
Optional settings for hash generation, currently supports only one option: HASH_HMAC
. When specified, the key
must be specified.
key
When HASH_HMAC
is specified for flags
, a shared secret key to be used with the HMAC hashing method must be supplied in this parameter.
Returns a Hashing Context for use with hash_update(), hash_update_stream(), hash_update_file(), and hash_final().
Version | Description |
---|---|
7.2.0 | Usage of non-cryptographic hash functions (adler32, crc32, crc32b, fnv132, fnv1a32, fnv164, fnv1a64, joaat) with HASH_HMAC was disabled. |
7.2.0 | Return HashContext instead of resource. |
Example #1 Incremental hashing example
<?php $ctx = hash_init('md5'); hash_update($ctx, 'The quick brown fox '); hash_update($ctx, 'jumped over the lazy dog.'); echo hash_final($ctx); ?>
The above example will output:
5c6ffbdd40d9556b73a21e63c3e0e904
© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/function.hash-init.php