hash_file()
hash_file() — Generate a hash value using the contents of a given file.
Built-in function of PHP 8.5. The manual lists it as available in PHP 5 >= 5.1.2, PHP 7, PHP 8, PECL hash >= 1.1. This page is the reference card: signature, parameters and return value, plus the changelog and the example the manual provides.
Signature
hash_file(string $algo, string $filename, bool $binary = false, array $options = []): string|false
Parameters
| Parameter | Type | What it takes |
|---|---|---|
| $algo | string | Name of selected hashing algorithm (e.g. "sha256"). For a list of supported algorithms see hash_algos(). |
| $filename | string | URL describing location of file to be hashed; Supports fopen() wrappers. |
| $binary | bool | When set to true, outputs raw binary data. false outputs lowercase hexits. |
| $options | array | An array of options for the various hashing algorithms. Currently, only the "seed" parameter is supported by the MurmurHash variants. |
Return value
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, or false on failure.
Example
A runnable snippet:
/* Create a file to calculate hash of */ file_put_contents('example.txt', 'The quick brown fox jumped over the lazy dog.'); echo hash_file('sha256', 'example.txt');
Output:
68b1282b91de2c054c36629cb8dd447f12f096d3e3c587978dc2248444633483
Changelog
| Version | Change |
|---|---|
| 8.1.0 | The options parameter has been added. |
See also
All PHP 8.5 built-in functions
Reference card built from the PHP manual page hash_file() (PHP documentation, CC BY 3.0). The page is generated from the manual, so the wording of the parameter and return value text follows php.net.