查询

hash()函数—用法及示例

「 计算字符串的哈希值 」


函数名:hash()

适用版本:PHP 5 >= 5.1.2, PHP 7, PHP 8

用法:hash(string $algo, string $data, bool $raw_output = false): string|false

说明:hash() 函数用于计算字符串的哈希值。它采用指定的算法对数据进行哈希计算,并返回哈希值。

参数:

  • $algo:要使用的哈希算法的名称,可以是以下算法之一:MD5, SHA1, SHA256, SHA512 等。完整的可用算法列表可以通过 hash_algos() 函数获取。
  • $data:要计算哈希值的字符串。
  • $raw_output(可选):如果设置为 true,则返回原始二进制数据;如果设置为 false(默认值),则返回十六进制格式的哈希值。

返回值:

  • 如果哈希计算成功,则返回计算得到的哈希值(十六进制格式或原始二进制数据)。
  • 如果哈希计算失败,则返回 false。

示例:

// 使用 MD5 算法计算哈希值
$hash = hash('md5', 'Hello World');
echo $hash; // 输出:ed076287532e86365e841e92bfc50d8c

// 使用 SHA256 算法计算哈希值(返回原始二进制数据)
$hash = hash('sha256', 'Hello World', true);
echo bin2hex($hash); // 输出:2ef7bde608ce5404e97d5f042f95f89f1c232871a9cf1b44ee5dbe2b7cc4e9d6

注意事项:

  • 哈希算法的选择应根据具体需求和安全性要求进行。
  • 对于较长的数据,建议使用 SHA256、SHA512 等更强大的哈希算法。
  • 在比较哈希值时,应始终使用哈希值比较函数(例如 hash_equals())来避免时序攻击等安全问题。
补充纠错
上一个函数: gnupg_sign()函数
下一个函数: gzwrite()函数
热门PHP函数
分享链接