PHP တွင်ပါ 0 င်သောတွက်ချက်မှုများအနေဖြင့်အထူးသဖြင့်ဖိုင်ပေါင်းစည်းမှုသို့မဟုတ် encryption processing processing processing ကိုအတည်ပြုသည့်အခါဘုံလိုအပ်ချက်မှာလိုအပ်သည်။ ဖိုင်များကိုတွက်ချက်ရန် Hash_final နှင့် File_get_Contents များကို မည်သို့ပေါင်းစပ်မည်ကိုဤဆောင်းပါးကမိတ်ဆက်ပေးလိမ့်မည်။
ပထမ ဦး စွာကျွန်ုပ်တို့သည်ဖိုင်မှအကြောင်းအရာများကိုဖတ်ရန် File_get_Contore function ကိုအသုံးပြုရန်လိုအပ်သည်။ File_Get_Contents function သည် file တစ်ခု၏ contents ကိုကြိုးအဖြစ်ပြန်ပို့နိုင်သည်။ ဤလုပ်ဆောင်မှုသည်အထူးသဖြင့်ဖိုင်ငယ်များအလွန်ကြီးမားပါကမှတ်ဉာဏ်များစွာကိုစားသုံးနိုင်သည့်သေးငယ်သောဖိုင်များကိုဖတ်ရန်အထူးသဖြင့်သင့်တော်သည်။ ကြီးမားသောဖိုင်များအတွက်, chunked စာဖတ်ခြင်းကိုအသုံးပြုရန်အကြံပြုသည်။
$file_path = 'path/to/your/file.txt'; // ဖိုင်၏လမ်းကြောင်းနှင့်အစားထိုးလိုက်ပါ
$file_contents = file_get_contents($file_path);
ဤဥပမာတွင် File.txt ဖိုင်၏ contents များကိုဖတ်ပြီး၎င်းကို $ file_contents တွင်သိမ်းဆည်းထားသည်။
ထို့နောက်ဖိုင်၏ hash တန်ဖိုးကိုတွက်ချက်ရန် Hashing algorithm တစ်ခုကိုကျွန်ုပ်တို့ရွေးချယ်ရန်လိုအပ်သည်။ PHP သည် MD5 , Sha256 စသည့်အများအားဖြင့် hash alg and stc ကဲ့သို့သော hash value ကိုတွက်ချက်ခြင်းမပြုမီ, Hash algorithm ကိုပထမ ဦး ဆုံးအစပြုရန်လိုအပ်သည်။
$algorithm = 'sha256'; // အသုံးပြုsha256algorithm hash တွက်ချက်မှုလုပ်ဆောင်သည်
$context = hash_init($algorithm);
ဤနေရာတွင်ကျွန်ုပ်တို့သည် MD5 ကဲ့သို့သောအခြား algorithms ဖြင့်အစားထိုးနိုင်သည့် Sha256 algorithm ကိုသင်ရွေးချယ်ပြီးဖြစ်သည်။
နောက်တစ်ခုကဖိုင်ကို hash valuext ကိုတွက်ချက်ရန် hash တန်ဖိုးကိုတွက်ချက်ရန် Hash_update function သို့ပြန်လာသည့်ဖိုင်ပါသောအရာများကိုကျွန်ုပ်တို့ဖြတ်ကျော်သည် ။
hash_update($context, $file_contents);
ဤအချိန်တွင်ဖိုင်၏အကြောင်းအရာကို Hash တွက်ချက်မှုသို့အဆင့်မြှင့်တင်ထားသည်။
ဖိုင်အကြောင်းအရာကိုအသစ်ပြောင်းပြီးသည်နှင့်နောက်ဆုံး hash တန်ဖိုးကိုတွက်ချက်ရန် hash_final function ကိုသုံးနိုင်သည်။ hash_final တစ်ခုလုံးကိုဖိုင်အမျိုးအစား၏ hash ရလဒ်ကိုပြန်လာလိမ့်မည်။
$hash_value = hash_final($context);
echo "ဖိုင်၏ hash တန်ဖိုးဖြစ်ပါတယ်: " . $hash_value;
ဤအချက်မှာ $ hash_value သည် ဖိုင်၏ hash တန်ဖိုးကိုသိမ်းဆည်းထားပြီးတန်ဖိုးကိုထုတ်လုပ်လိမ့်မည်။
ဖိုင်တစ်ခု၏ hash တန်ဖိုးကိုတွက်ချက်ရန် hash_final နှင့် file_get_contents များကို မည်သို့ပေါင်းစပ်ရမည်ဟူသောပြ PHP code perment တစ်ခုအပြည့်အစုံဖြစ်သည်။
<?php
$file_path = 'path/to/your/file.txt'; // ဖိုင်၏လမ်းကြောင်းနှင့်အစားထိုးလိုက်ပါ
$file_contents = file_get_contents($file_path);
$algorithm = 'sha256'; // အသုံးပြုsha256algorithm
$context = hash_init($algorithm);
hash_update($context, $file_contents);
$hash_value = hash_final($context);
echo "ဖိုင်၏ hash တန်ဖိုးဖြစ်ပါတယ်: " . $hash_value;
?>
ဖိုင်အရွယ်အစား - ပိုကြီးတဲ့ဖိုင်တွေအတွက် file_get_contros တွေက အထူးသဖြင့်ဖိုင်တွေဖတ်နေတဲ့အချိန်မှာမှတ်ဥာဏ်မလုံလောက်ဘူး။ fopen files များဖတ်ရန် fopen နှင့် Thead ကို အသုံးပြုရန်စဉ်းစားပါ။
Security - MD5 နှင့် Sha1 ကို ကျယ်ကျယ်ပြန့်ပြန့်အသုံးပြုနေဆဲဖြစ်သော်လည်းဤ algorithms များသည်တိုက်မိခြင်းတိုက်ခိုက်မှုများမှအားနည်းချက်ရှိကြောင်းသက်သေပြခဲ့သည်။ ပိုမိုမြင့်မားသောလုံခြုံရေးလိုအပ်ချက်များပါ 0 င်သည့်အခြေအနေများပါ 0 င်ပါက Sha256 သို့မဟုတ် Sha512 ကဲ့သို့သောပိုမိုလုံခြုံသော algorithm ကိုအသုံးပြုရန်အကြံပြုသည်။
စွမ်းဆောင်ရည် - Hash တွက်ချက်မှုများ၏စွမ်းဆောင်ရည်သည် algorithms နှင့် file sizes နှင့်ဆက်စပ်နေသည်။ စွမ်းဆောင်ရည်မြင့်မားသောလိုအပ်ချက်များရှိသောအသုံးချပရိုဂရမ်များသည်တိကျသောလိုအပ်ချက်များနှင့်အညီသင့်လျော်သော algorithm ကိုရွေးချယ်ရန်လိုအပ်သည်။