hash_file

(PHP 5 >= 5.1.2, PHP 7, PHP 8, PECL hash >= 1.1)

hash_file给指定文件的内容生成散列值

说明

hash_file(
    string $algo,
    string $filename,
    bool $binary = false,
    array $options = []
): string|false

参数

algo

要使用的散列算法的名称(例如:“md5”、“sha256”、“haval160,4”等)。 可以在 hash_algos() 中查看当前支持的算法。

filename

要进行散列运算的文件位置的 URL;支持 fopen 封装协议。

binary

设置为 true 时,输出原始二进制数据。 设置为 false 时,输出小写的十六进制字符串。

options

各种散列算法的一系列选项数组。 目前 MurmurHash 算法仅支持 “seed” 参数。

返回值

如果 binary 设置为 true, 则返回原始二进制数据表示的信息摘要, 否则返回十六进制小写字符串格式表示的信息摘要。

更新日志

版本 说明
8.1.0 新增 options 参数。

示例

示例 #1 hash_file() 示例

<?php
/* Create a file to calculate hash of */
file_put_contents('example.txt', 'The quick brown fox jumped over the lazy dog.');

echo
hash_file('sha256', 'example.txt');
?>

以上示例会输出:

68b1282b91de2c054c36629cb8dd447f12f096d3e3c587978dc2248444633483

参见

  • hash() - 生成散列值(消息摘要)
  • hash_hmac_file() - 使用 HMAC 方法和给定文件的内容生成带密钥的散列值
  • hash_update_file() - 从文件向活跃的散列运算上下文中填充数据
  • md5_file() - 计算指定文件的 MD5 散列值
  • sha1_file() - 计算文件的 sha1 散列值