hash_hmac_file
(PHP 5 >= 5.1.2, PHP 7, PHP 8, PECL hash >= 1.1)
hash_hmac_file — Generate a keyed hash value using the HMAC method and the contents of a given file
Description
string
$algo
,string
$filename
,string
$key
,bool
$binary
= false
): string|false
Parameters
-
algo
-
Name of selected hashing algorithm (i.e. "md5", "sha256", "haval160,4", etc..) See hash_hmac_algos() for a list of supported algorithms.
-
filename
-
URL describing location of file to be hashed; Supports fopen wrappers.
-
key
-
Shared secret key used for generating the HMAC variant of the message digest.
-
binary
-
When set to
true
, outputs raw binary data.false
outputs lowercase hexits.
Return Values
Returns a string containing the calculated message digest as lowercase hexits
unless binary
is set to true in which case the raw
binary representation of the message digest is returned.
Returns false
when algo
is unknown or is a
non-cryptographic hash function, or if the file
filename
cannot be read.
Changelog
Version | Description |
---|---|
7.2.0 | Usage of non-cryptographic hash functions (adler32, crc32, crc32b, fnv132, fnv1a32, fnv164, fnv1a64, joaat) was disabled. |
Examples
Example #1 hash_hmac_file() example
<?php
/* Create a file to calculate hash of */
file_put_contents('example.txt', 'The quick brown fox jumped over the lazy dog.');
echo hash_hmac_file('md5', 'example.txt', 'secret');
?>
The above example will output:
7eb2b5c37443418fc77c136dd20e859c
See Also
- hash_hmac_algos() - Return a list of registered hashing algorithms suitable for hash_hmac
- hash_hmac() - Generate a keyed hash value using the HMAC method
- hash_file() - Generate a hash value using the contents of a given file