လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> hash_update_stream ကို အသုံးပြု. ဖိုင်သမာဓိကိုစစ်ဆေးပါ။

hash_update_stream ကို အသုံးပြု. ဖိုင်သမာဓိကိုစစ်ဆေးပါ။

M66 2025-05-27

PHP တွင် hash_update_stream () function သည် function အတွက် data stream ၏ hash တန်ဖိုးကိုတွက်ချက်ရန်အလွန်အသုံးဝင်သောကိရိယာတစ်ခုဖြစ်သည်။ ဤလုပ်ဆောင်မှုသည်များသောအားဖြင့်ဖိုင်တစ်ခု၏သမာဓိကိုစစ်ဆေးရန်နှင့်ဖိုင်ကိုဂီယာသို့မဟုတ်သိုလှောင်မှုအတွင်းနှင့်အတူဖိုင်ကိုအနှောင့်အယှက်မပေးရန်အသုံးပြုသည်။ ဖိုင်တစ်ခု၏သမာဓိကိုစစ်ဆေးရန် hash_update_stream () function ကိုမည်သို့အသုံးပြုရမည်ကိုဤဆောင်းပါးကမိတ်ဆက်ပေးလိမ့်မည်။

1 ။ hash_update_stream () function ကဘာလဲ။

Hash_update_stream () သည် Hash အခြေအနေ၏တန်ဖိုးကိုအဆင့်မြှင့်တင်ရန် PHP မှပေးသော function တစ်ခုဖြစ်သည်။ ၎င်း၏ရည်ရွယ်ချက်မှာ data data stream (များသောအားဖြင့်ဖိုင်တစ်ခု) ကိုပြုပြင်ခြင်းဖြင့်ဖိုင်၏ hash တန်ဖိုးကိုတဖြည်းဖြည်းတွက်ချက်ရန်ဖြစ်သည်။

Syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -

 bool hash_update_stream ( resource $context , resource $file_handle [, int $length = 8192 ] )
  • $ Context : များသောအားဖြင့် hash_init () function ဖြင့်ဖန်တီးလေ့ရှိသည်။

  • $ file_handle - ဖွင့်ထားသောဖိုင်လက်ကိုင် (ဥပမာ, fopen ( ) မှတဆင့်ဖွင့်ထားသောဖိုင်ကိုဖွင့်ထားသောဖိုင်ကိုဖွင့်ထားသည်။

  • $ အရှည် - Stream ကိုဖတ်နေသည့်အခါတစ်ကြိမ်စီတိုင်းဖတ်သည့်အခါတိုင်းပုံမှန်အားဖြင့် 8192 bytes ဖြစ်သည်။

2 ။ file contality ကိုအတည်ပြုရန် Hash_update_stream () ကို ဘာကြောင့်သုံးတာလဲ။

ဖိုင်ပေါင်းစည်းမှုစစ်ဆေးခြင်းသည်သိမ်းဆည်းခြင်းသို့မဟုတ်လွှဲပြောင်းခြင်းအတွင်းဖိုင်များကိုပြုပြင်မွမ်းမံခြင်းသို့မဟုတ်အကျင့်ပျက်ခြစားမှုများကိုသေချာစေရန်သေချာစေရန်အဓိကနည်းလမ်းဖြစ်သည်။ application တစ်ခုတွင်ဖိုင်များသည်လုံခြုံရေးနှင့်ဒေတာရှေ့နောက်ညီညွတ်မှုအတွက်သေချာစေရန်သေချာသည့် file contracity ်ဌာန်းချက်ကိုသေချာစေရန်သေချာသည်။

ဥပမာအားဖြင့်ဆာဗာမှကူးယူထားသောဖိုင်များကိုလွှဲပြောင်းစဉ်အတွင်းဖိုင်များကိုအနှောင့်အယှက်ဖြစ်စေကြောင်းအတည်ပြုလိုပေမည်။ ဤအချက်မှာဖိုင်၏ hash တန်ဖိုးကိုနှိုင်းယှဉ်ခြင်းဖြင့်ဖိုင်သည်အတူတူပင်ရှိနေခြင်းရှိမရှိကိုသင်အတည်ပြုနိုင်သည်။

3 ။ ဖိုင်သမာဓိကိုစစ်ဆေးရန် hash_update_stream () ကို သုံးပါ

ဖိုင်အဆင့်ဆင့်ကိုဖတ်ပြီး 4 င်း၏ hash value ကိုတွက်ချက်ရန် hash_update_stream () ကို သုံးနိုင်သည်။ ဤချဉ်းကပ်နည်းဖြင့်ဖိုင်အမျိုးအစားများအားလုံးကိုအကောင်အထည်ဖော်ရန်နှင့်နောက်ဆုံးတွင်ဖိုင်၏အပြည့်အ 0 ရရှိစေရန်သေချာသည်။ လွှဲပြောင်းခြင်းသို့မဟုတ်သိုလှောင်မှုကာလအတွင်းဖိုင်ပြောင်းလဲခြင်းသည်အချိန်မရွေးဆိုလျှင်၎င်းသည်ဖိုင်၏သမာဓိကိုရှာဖွေရန်အသုံးပြုနိုင်သည်။

4 ။ နမူနာကုဒ်

ဖိုင်သမာဓိကိုအတည်ပြုရန် Hash_update_stream () function ကိုမည်သို့အသုံးပြုရမည်ကိုပြသသည့်ရိုးရှင်းသောဥပမာတစ်ခုဖြစ်သည်။

 <?php
// တစ် ဦး hash အခြေအနေဖန်တီးပါ
$context = hash_init('sha256');

// ဖိုင်ကိုဖွင့်ပါ
$file_path = 'path/to/your/file.txt';
$file = fopen($file_path, 'rb');
if (!$file) {
    die('无法ဖိုင်ကိုဖွင့်ပါ');
}

// အသုံးပြု hash_update_stream() တဖြည်းဖြည်းဖိုင်၏ hash တန်ဖိုးကိုတွက်ချက်
while (!feof($file)) {
    // တစ်ခုချင်းစီကိုဖတ်ပါ 8192 bytes နှင့် hash တန်ဖိုးကို update
    hash_update_stream($context, $file, 8192);
}

// ဖိုင်၏နောက်ဆုံး hash တန်ဖိုးကိုရယူပါ
$hash = hash_final($context);

// output ဖိုင်၏ hash တန်ဖိုး
echo "ဖိုင်၏ hash တန်ဖိုးဖြစ်ပါတယ်: " . $hash . "\n";

// ဖိုင်ကိုပိတ်ပါ
fclose($file);

// သငျသညျယခင်ကဖိုင်၏မှန်ကန်သော hash သိုလှောင်ထားပြီဆိုပါစို့
$correct_hash = 'Pre- သိုလှောင်ထားသောမှန်ကန်သော hash တန်ဖိုး';

// ဖိုင်သမာဓိကိုစစ်ဆေးပါ
if ($hash === $correct_hash) {
    echo "ဖိုင်သမာဓိအတည်ပြုစိစစ်အတည်ပြု!\n";
} else {
    echo "ဖိုင်သမာဓိစစ်ဆေးမှုအတည်ပြုချက်မအောင်မြင်ပါ!\n";
}
?>

ဤဥပမာတွင် hash_init () function ကို အသုံးပြု. hash အခြေအနေကို ဦး စွာဖန်တီးသည်။ ထို့နောက်ဖိုင်ကိုဖွင့ ်. hash_update_stram () function ကို အသုံးပြု. ဖိုင်၏ hash တန်ဖိုးကိုတဖြည်းဖြည်းတွက်ချက်သည်။ ဖိုင်ကိုဖတ်ပြီးနောက်ဖိုင်၏နောက်ဆုံး hash တန်ဖိုးကိုရယူရန်နှင့်ဖိုင်၏သမာဓိကိုစစ်ဆေးရန်ယခင်သိုလှောင်ထားသည့်မှန်ကန်သော hash တန်ဖိုးနှင့်နှိုင်းယှဉ်ပါက hash_final () ကို အသုံးပြုသည်။

5 ။ မှတ်စုဖို့အရာ

  • hash_update_stream () function သည်ဖိုင်တစ်ခုလုံးကိုတစ်ပြိုင်နက်တည်းဖွင့်ရန်အလွန်အသုံးဝင်သောကြောင့် Hash တွက်ချက်မှုများအတွက်ဖိုင်များကိုအဆင့်ဆင့်ဖတ်ရန်ဖြစ်သည်။

  • စာဖတ်စဉ်ဖိုင်သည်မှန်ကန်သော 0 င်ခွင့်အခွင့်အရေးများရှိကြောင်းသေချာပါစေ။

  • Hash_update_stream () သည် file streams များ, data streams နှင့်အခြား streams အမျိုးအစားများအတွက်သင့်တော်သည်။

6 ။ ဆက်စပ်သောလုပ်ဆောင်ချက်များ

  • Hash_init () - hash context ကိုအစပြုခြင်းနှင့် hash algorithm ကိုသတ်မှတ်သည် (ဥပမာ Sha256 ) ကိုသတ်မှတ်သည်။

  • hash_update () : hash အခြေအနေကို update လုပ်ဖို့အသုံးပြုတဲ့တန်ဖိုး။

  • Hash_final () : နောက်ဆုံး hash တန်ဖိုးကိုရရှိသည်။

7 ။ အကျဉ်းချုပ်

File contrunity ကိုအတည်ပြုရန် hash_update_stram () function ကိုအသုံးပြုခြင်းသည်အလွန်ထိရောက်သောနည်းစနစ်ဖြစ်သည်။ ဖိုင်ကိုတဖြည်းဖြည်းဖတ်ခြင်းနှင့် hash တန်ဖိုးကိုတွက်ချက်ခြင်းအားဖြင့်ဖိုင်ကို transmission နှင့် storage စဉ်အတွင်းအကျင့်ပျက်ခြစားမှုကိုအနှောင့်အယှက်မဖြစ်စေနိုင်ကြောင်းသေချာပါသည်။ လက်တွေ့ကျသောအပလီကေးရှင်းများ၌ဤနည်းလမ်းကိုဖိုင်ကူးယူခြင်း,