計(jì)算文本文件 "test.txt" 的 MD5 散列:
<?php $filename = "test.txt"; $md5file = md5_file($filename); echo $md5file; ?>
以上代碼的輸出:
d41d8cd98f00b204e9800998ecf8427e
md5_file() 函數(shù)計(jì)算文件的 MD5 散列。
md5_file() 函數(shù)使用 RSA 數(shù)據(jù)安全,包括 MD5 報(bào)文摘要算法。
來(lái)自 RFC 1321 的解釋 - MD5 報(bào)文摘要算法:MD5 報(bào)文摘要算法將任意長(zhǎng)度的信息作為輸入值,并將其換算成一個(gè) 128 位長(zhǎng)度的"指紋信息"或"報(bào)文摘要"值來(lái)代表這個(gè)輸入值,并以換算后的值作為結(jié)果。MD5 算法主要是為數(shù)字簽名應(yīng)用程序而設(shè)計(jì)的;在這個(gè)數(shù)字簽名應(yīng)用程序中,較大的文件將在加密(這里的加密過(guò)程是通過(guò)在一個(gè)密碼系統(tǒng)下[如:RSA]的公開(kāi)密鑰下設(shè)置私有密鑰而完成的)之前以一種安全的方式進(jìn)行壓縮。
如需計(jì)算字符串的 MD5 散列,請(qǐng)使用 md5() 函數(shù)。
md5_file(file,raw)
參數(shù) | 描述 |
---|---|
file | 必需。規(guī)定要計(jì)算的文件。 |
raw |
可選。布爾值,規(guī)定十六進(jìn)制或二進(jìn)制輸出格式:
|
返回值: | 如果成功則返回已計(jì)算的 MD5 散列,如果失敗則返回 FALSE。 |
PHP 版本: | 4.2.0+ |
更新日志: |
在 PHP 5.0 中,新增 raw 參數(shù)。 自 PHP 5.1 起,可以通過(guò)封裝使用 md5_file()。例如: md5_file("http://w3cschool.com.cn/..") |
在文件中存儲(chǔ) "test.txt" 的 MD5 散列:
<?php $md5file = md5_file("test.txt"); file_put_contents("md5file.txt",$md5file); ?>檢測(cè) "test.txt" 是否已被更改(即 MD5 散列是否已被更改):
<?php $md5file = file_get_contents("md5file.txt"); if (md5_file("test.txt") == $md5file) { echo "The file is ok."; } else { echo "The file has been changed."; } ?>
以上代碼的輸出:
The file is ok.
如對(duì)本文有疑問(wèn),請(qǐng)?zhí)峤坏浇涣髡搲?,廣大熱心網(wǎng)友會(huì)為你解答!! 點(diǎn)擊進(jìn)入論壇
Powered by 365建站網(wǎng) RSS地圖 HTML地圖
copyright © 2013-2024 版權(quán)所有 鄂ICP備17013400號(hào)