hash

(PHP 5 >= 5.1.2, PHP 7, PECL hash >= 1.1)
Generate a hash value (message digest)
string hash ( string $algo, string $data [, bool $raw_output = false ] )
Parameters:
algo

Name of selected hashing algorithm (e.g. "md5", "sha256", "haval160,4", etc..)

data

Message to be hashed.

raw_output

When set to TRUE, outputs raw binary data. FALSE outputs lowercase hexits.

Returns:

Returns a string containing the calculated message digest as lowercase hexits unless raw_output is set to true in which case the raw binary representation of the message digest is returned.

Changelog:
5.4.0

The tiger algorithm now uses big-endian byte ordering. See also example below.

Examples:
A hash() example
1
2
3
<?php
echo hash('ripemd160''The quick brown fox jumped over the lazy dog.');
?>

The above example will output:

ec457d0a974c48d5685a7efa03d137dc8bbde7e3
Calculate pre PHP-5.4 tiger hashes with PHP-5.4 and higher
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
function old_tiger($data ""$width=192, $rounds = 3) {
    return substr(
        implode(
            array_map(
                function ($h) {
                    return str_pad(bin2hex(strrev($h)), 16, "0");
                },
                str_split(hash("tiger192,$rounds"$data, true), 8)
            )
        ),
        0, 48-(192-$width)/4
    );
}
echo hash('tiger192,3''a-string'), PHP_EOL;
echo old_tiger('a-string'), PHP_EOL;
?>

Output of the above example in PHP 5.3:

146a7492719b3564094efe7abbd40a7416fd900179d02773
64359b7192746a14740ad4bb7afe4e097327d0790190fd16

Output of the above example in PHP 5.4:

64359b7192746a14740ad4bb7afe4e097327d0790190fd16
146a7492719b3564094efe7abbd40a7416fd900179d02773
See also:

hash_file() -

hash_hmac() -

hash_init() -

md5() -

sha1() -

doc_php
2025-01-10 15:47:30
Comments
Leave a Comment

Please login to continue.