📅  最后修改于: 2023-12-03 15:33:33.037000             🧑  作者: Mango
hash_final() 函数以字符串的形式获取哈希摘要的最终值。 哈希摘要可用于加密和验证数据。
哈希函数采用输入消息并生成固定大小的哈希值。若两个消息的摘要不同,则可以把摘要看成两个不同数据的指纹,并得出这两个数据不同的结论。
hash_final($context, $raw_output = false);
$context
必需。由 hash_init() 创建的哈希上下文。
$raw_output
可选。默认为 false。可改为 true 以获取原始二进制数据。
无论 raw_output 参数的值是 true 还是 false,hash_final() 函数都将返回一个哈希值的字符串。
如果未指定 raw_output 参数或 raw_output 参数为 false,则返回值将是十六进制数字字符串。
如果 raw_output 参数为 true,则返回值将是原始二进制数据。
<?php
$str = 'Hello World';
$md5 = hash_init('md5');
hash_update($md5, $str);
$hash = hash_final($md5);
echo 'MD5 hash of "' . $str . '": ' . $hash;
?>
输出:
MD5 hash of "Hello World": b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9
<?php
$str = 'Hello World';
$ripemd160 = hash_init('ripemd160');
hash_update($ripemd160, $str);
$hash = hash_final($ripemd160, true);
echo 'RIPEMD-160 hash of "' . $str . '": ' . bin2hex($hash);
?>
输出:
RIPEMD-160 hash of "Hello World": 98c615784ccb5fe5936fbc0cbe9dfdb408d92f0f