File integression ည့်ခံသည်အထူးသဖြင့်တင်သည့်ဖိုင်များ, MD5_File () function ကို function သည်ဖိုင်တစ်ခု၏ MD5 hash တန်ဖိုးကိုတွက်ချက်ရန်နှင့်ရိုးရှင်းပြီးလက်တွေ့ကျသောကိရိယာတစ်ခုဖြစ်သည်။ ဤဆောင်းပါးသည် MD5_File () function ကိုအသုံးပြုခြင်းနှင့်၎င်း၏လျှောက်လွှာကိုဥပမာအားဖြင့်အသေးစိတ်ဖော်ပြရန်အသေးစိတ်ကိုအသေးစိတ်မိတ်ဆက်ပေးလိမ့်မည်။
MD5_File () သည်သတ်မှတ်ထားသောဖိုင်၏ MD5 hash တန်ဖိုးကိုတွက်ချက်သည့် MD5-furdent တစ်ခုဖြစ်သည်။ MD5 (Message Digest Algorithm 5) သည် File Contents များကိုထူးခြားစွာခွဲခြားသတ်မှတ်ရန် 32-bit hexadecimal string ကိုထုတ်ပေးသော MDE-အသုံးပြုသော hash function ဖြစ်သည်။
string md5_file ( string $filename [, bool $raw_output = false ] )
$ filename : လိုအပ်သည်, ဖိုင်လမ်းကြောင်း။
$ Raw_output : မူလ binary format နဲ့ output ကိုမှ output ကိုမှ output ကိုမှ optional ။ Default False သည် 32-bit hexadecimal string ကိုပြန်ပို့သည်။
function သည်ဖိုင်အမျိုးအစား၏ MD5 တန်ဖိုးကိုပြန်လည်ရရှိပြီးပျက်ကွက်ပါက မှားယွင်းစွာ ပြန်သွားသည်။
ဖိုင်တစ်ခု၏ MD5 တန်ဖိုးကိုတွက်ချက်ရန်အရိုးရှင်းဆုံးဥပမာမှာ -
<?php
$file = 'example.txt';
$md5 = md5_file($file);
if ($md5 !== false) {
echo "စာချုပ်စာတမ်း $file ၏MD5တန်ဖိုး:$md5";
} else {
echo "无法读取စာချုပ်စာတမ်း $file";
}
?>
ဤဥပမာတွင်ကျွန်ုပ်တို့သည်ဖိုင်လမ်းကြောင်းဥပမာတွင် Passion.txt သို့ သွား. ဖိုင်၏ MD5 တန်ဖိုးကိုပုံနှိပ်ထုတ်ဝေသည်။ အကယ်. ဖိုင်မတည်ရှိပါကသို့မဟုတ်မဖတ်နိုင်ပါကအမှားအယွင်းတစ်ခုပြန်ပို့သည်။
ဖိုင်တစ်ခုကိုတင်သည့်အခါ 0 န်ဆောင်မှုခံယူသူသည်ဖိုင်၏ MD5 တန်ဖိုးကို ဦး စွာတွက်ချက်နိုင်သည်။ တင်ပြီးနောက်တွင်ဆာဗာသည် MD5 ကိုတွက်ချက်ရန် MD5 ကိုတွက်ချက်လိမ့်မည်။
<?php
// 假设客户端上传了စာချုပ်စာတမ်း,服务器端接收到စာချုပ်စာတမ်း路径$uploadedFile
$serverMd5 = md5_file($uploadedFile);
$clientMd5 = $_POST['file_md5']; // client ကိုတင်သွင်းခဲ့သည်ယူဆmd5အဘိုး
if ($serverMd5 === $clientMd5) {
echo "စာချုပ်စာတမ်း验证成功,ပြည့်စုံပြီးမှန်ကန်သော。";
} else {
echo "စာချုပ်စာတမ်း验证失败,စာချုပ်စာတမ်း可能被篡改。";
}
?>
cache system တွင်ဖိုင်၏ MD5 တန်ဖိုးကိုဖိုင်ကိုပြုပြင်မွမ်းမံခြင်း, မွမ်းမံခြင်းရှိမရှိဆုံးဖြတ်ရန်အသုံးပြုနိုင်သည်။
<?php
$cacheFile = '/path/to/cache/data.cache';
$currentMd5 = md5_file($cacheFile);
if ($currentMd5 !== $storedMd5) {
// စာချုပ်စာတမ်း内容发生变化,cache ကို regenerate
regenerateCache();
$storedMd5 = $currentMd5;
}
?>
Hash ဖိုင်ကို MD5_File () ဖြင့်တွက်ချက်သည်။ download download downloads သို့မဟုတ် download download downloads သို့မဟုတ် link များကိုကာကွယ်ခြင်းမှကာကွယ်ရန်အသုံးပြုနိုင်သည်။
<?php
$file = 'files/sample.zip';
$expectedMd5 = md5_file($file);
echo "点击下载စာချုပ်စာတမ်း:<a href='https://m66.net/download.php?file=sample.zip&md5=$expectedMd5'>link ကို download လုပ်ပါ</a>";
?>
MD5_File () ဖိုင်တွဲများ၏စွမ်းဆောင်ရည်အပေါ်သက်ရောက်မှုရှိမည့်တွက်ချက်မှုဆိုင်ရာအကြောင်းအရာတစ်ခုလုံးကိုဖတ်ရှုသည်။ ၎င်းကိုကျိုးကြောင်းဆီလျော်စွာအသုံးပြုရန်အကြံပြုသည်။
MD5 algorithm သည်တိုက်မှုအန္တရာယ်များကိုသက်သေပြခဲ့သည်။ လုံခြုံရေး - အထိခိုက်မခံသောအခြေအနေများတွင် Saf_File (Sha256 ', $ filename ကဲ့သို့သောပိုမိုလုံခြုံသော Hash algorithm ကိုအသုံးပြုရန်အကြံပြုသည်။
အဝင်ဖိုင်လမ်းကြောင်းကိုဖတ်ရှုရမည်ဖြစ်ပြီးမဟုတ်ရင် မှားယွင်းသောအ ယူမှားလိမ့်မည်။
ဤဆောင်းပါးမှတစ်ဆင့် MD5_File () function ကိုအသုံးပြုသောအခြေခံအသုံးပြုမှုနည်းလမ်းများနှင့်ပုံမှန် application တစ်ခု၏အခြေခံအခြေအနေများကိုသင်ကျွမ်းကျင်စွာပြုထားသည်။ အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုဆိုင်ရာလိုအပ်ချက်များလိုအပ်ချက်များနှင့်ပေါင်းစပ်ထားသော MD5_File () သည်အလွန်အဆင်ပြေသောကိရိယာတစ်ခုဖြစ်သည်။