hash()

hash() — Generate a hash value (message digest).

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(string $algo, string $data, bool $binary = false, array $options = []): string

Parameters

ParameterTypeWhat it takes
$algostringName of selected hashing algorithm (e.g. "sha256"). For a list of supported algorithms see hash_algos().
$datastringMessage to be hashed.
$binaryboolWhen set to true, outputs raw binary data. false outputs lowercase hexits.
$optionsarrayAn 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.

Example

A runnable snippet:

echo hash('sha256', 'The quick brown fox jumped over the lazy dog.');

Output:

68b1282b91de2c054c36629cb8dd447f12f096d3e3c587978dc2248444633483

Changelog

VersionChange
8.1.0The options parameter has been added.
8.0.0Now throws a ValueError exception if algo is unknown; previously, false was returned and an E_WARNING message was emitted.

See also

hash_init(), hash_file(), hash_hmac()

All PHP 8.5 built-in functions

Reference card built from the PHP manual page hash() (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.