在 PHP 中,可以使用 hash()
函数来生成哈希值。如果要自定义哈希函数,可以使用 hash_hmac()
函数。
hash_hmac()
函数的语法如下:
string hash_hmac ( string $algo , string $data , string $key [, bool $raw_output = false ] ) : string
其中,$algo 是哈希算法名称,$data 是要加密的数据,$key 是用于加密的密钥,$raw_output 是否返回二进制格式的哈希值。
例如,要使用自定义的哈希函数来生成一个 MD5 哈希值,可以使用以下代码:
function custom_md5($data, $key) {
return md5($data . $key);
}
$data = 'Hello, world!';
$key = 'secret';
$hash = hash_hmac('md5', $data, $key, true);
echo $hash; // 输出:86cb01ef224a27360ce700b5ed0e9b5d
在上面的示例中,我们定义了一个名为 custom_md5()
的自定义哈希函数,该函数将输入数据和密钥连接起来,并使用 PHP 内置的 md5()
函数来生成哈希值。然后,我们使用 hash_hmac()
函数来调用自定义哈希函数,并将结果存储在 $hash
变量中。最后,我们输出了 $hash
变量的值。