(PHP 5 >= 5.1.2, PHP 7, PHP 8, PECL hash >= 1.1)
hash_hmac_file — 使用 HMAC 方法和指定檔案的內容產生金鑰雜湊值
$algo
,$filename
,$key
,$binary
= false
algo
所選雜湊演算法的名稱(例如 "sha256"
)。支援的演算法列表請參見 hash_hmac_algos()。
注意:
不允許非加密雜湊函數。
filename
描述要雜湊的檔案位置的 URL;支援 fopen wrappers。
key
用於產生訊息摘要的 HMAC 變體的共享密鑰。
binary
返回一個字串,其中包含以小寫十六進位字元表示的計算出的訊息摘要,除非 binary
設為 true,在這種情況下會返回訊息摘要的原始二進位表示。如果檔案 filename
無法讀取,則返回 false
。
如果 algo
未知或是非加密雜湊函數,則會拋出 ValueError 例外。
版本 | 說明 |
---|---|
8.0.0 | 現在,如果 algo 未知或是非加密雜湊函數,則會拋出 ValueError 例外;之前會返回 false 。 |
7.2.0 | 已停用非加密雜湊函數(adler32、crc32、crc32b、fnv132、fnv1a32、fnv164、fnv1a64、joaat)的使用。 |
範例 #1 hash_hmac_file() 範例
<?php
/* 建立一個要計算雜湊值的檔案 */
file_put_contents('example.txt', 'The quick brown fox jumped over the lazy dog.');
echo hash_hmac_file('sha256', 'example.txt', 'secret');
?>
上述範例將輸出
9c5c42422b03f0ee32949920649445e417b2c634050833c5165704b825c2a53b