本文目錄一覽:
如何使用PHP計算文件的MD5值
function getAllFileMd5($dir){
$hash = ”;
$dir = new RecursiveDirectoryIterator($dir);
foreach(new RecursiveIteratorIterator($dir) as $file) {
$hash .= md5_file($file);
}
return md5($hash);
}
?
php怎麼獲取apk的md5
由於需要判斷上傳的文件是否被修改過,需要記錄上傳文件的md5值,這裡記錄一下獲取文件md5值的方法。
if(isset($_FILES[‘multimedia’]) $_FILES[‘multimedia’][‘error’]==0)
{
$file_name = $_FILES[‘multimedia’][‘name’];
$size = getimagesize($_FILES[‘multimedia’][‘tmp_name’]);
$type = $_FILES[‘multimedia’][‘type’];
$original = $_FILES[‘multimedia’][‘tmp_name’];
$md5 = md5_file($original);
echo $md5;
}
md5_file()
md5_file() 函數計算文件的 MD5 散列。md5() 函數使用 RSA 數據安全,包括 MD5 報文摘譯算法。如果成功,則返回所計算的 MD5 散列,如果失敗,則返回 false。
語法:md5(string,raw)
參數string,必需。規定要計算的文件。
參數charlist,可選。規定十六進制或二進制輸出格式:TRUE – 原始 16 字符二進制格式;FALSE – 默認。32 字符十六進制數。
?php
$filename = “test.txt”;
$md5file = md5_file($filename);
echo $md5file;
?
存儲 “test.txt” 文件的 MD5 散列:
?php
$md5file = md5_file(“test.txt”);
file_put_contents(“md5file.txt”,$md5file);
?
在本例中,我們將檢測 “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.”;
}
?
itjob網上有很多相關例子
輸出:
The file is ok.
php中如何使用MD5碼
首先介紹一下PHP中MD5函數的使用方法:
?php
$pswd1=md5(“cenusdesign”);
echo
$pswd1;
//運行結果為:fc60ec37d1c08d5b0fb67a8cd934d5ba
$pswd2=md5(“Cenusdesign”);
echo
$pswd2;
//運行結果為:067577d9fc109c80538c81d6f02bd293
?
顯然,經過md5加密後,原本“cenusdesign”轉變成了一組32位的字符串,而且,即使是一個字母的大小寫變化,這組字符串就會發生巨大的變化。
Cenus
Design建議把用戶註冊時,將密碼首先經過MD5轉換,然後將轉換加密後的數據庫。在用戶登陸時,也將密碼先進行MD5轉化,再和數據庫中那組經過MD5加密的字符串進行比較。這樣,就可以做到在不知道用戶確切密碼的情況下完成密碼的比對操作。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/248326.html