PHP တွင် Hash_Final () သည်ပြီးစီးသော hash digest ကိုပြန်ပေးသည့်အလွန်အသုံးဝင်သောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ များသောအားဖြင့် hash algorithms ( hash_init () နှင့် hash_update () ) streaming hash algorithms ကိုအသုံးပြုသောအခါကျွန်ုပ်တို့သည်နောက်ဆုံး hash တန်ဖိုးကိုရရှိရန် Hash_Final () ကို အသုံးပြုလိမ့်မည်။ ဤဆောင်းပါးသည် Hash_Final () function ကို PHP တွင်အစာကြေရန်အစာအဟာရအချက်အလက်များကိုရရှိရန်နှင့်မည်သို့လည်ပတ်ရမည်ကိုသရုပ်ပြပါလိမ့်မည်။
Hash Digest ဆိုသည်မှာ input data ကို fixed-length string ကိုပြောင်းလဲစေသည့်ဆေးထည့်သော algorithm ဖြစ်သည်။ PHP တွင် MD5, Sha1, Sha256 စသဖြင့်) PHP တွင်ဒေတာသမာဓိစစ်ဆေးခြင်း, ဒီဂျစ်တယ်လက်မှတ်များစသဖြင့်ဤအကျဉ်းချုပ်ကိုပုံမှန်အားဖြင့်အသုံးပြုသည်။
Hash_final () သည် PHP တွင် built-in function တစ်ခုဖြစ်ပြီး Hash တွက်ချက်မှုကိုပြီးဆုံးပြီးနောက်ဆုံး hash value ကိုပြန်ပို့သည်။ ၎င်းကို hash_init () နှင့် hash_update () နှင့် တွဲဖက်. အသုံးပြုလေ့ရှိသည်။
သဒ္ဒါ :
string hash_final ( resource $context [, bool $raw_output = false ] )
parameter သည်ဖော်ပြချက် :
$ Context : hash_init () ကပြန်လာ hash အခြေအနေ။
$ Raw_output : အကယ်. ဟုတ်ကဲ့ ။ အကယ်. Hash Digest ကို Binary format ဖြင့်ပြန်ပို့ပါ။
hash အခြေအနေကိုစတင်ရန် hash_init () function ကို ဦး စွာအသုံးပြုသည်။ ဤလုပ်ဆောင်ချက်သည် hashing algorithm ကိုသတ်မှတ်ရန်လိုအပ်သည် (Sha256 ကဲ့သို့သော) ။
$context = hash_init('sha256');
ထို့နောက် hash အခြေအနေတွင်ဒေတာများကိုထည့်ရန် hash_update () function ကိုသုံးပါ။ Hash_update () () နောက်ထပ်အချက်အလက်များထည့်သွင်းရန်အကြိမ်ပေါင်းများစွာခေါ်ဆိုနိုင်သည်။
$data = "Hello, world!";
hash_update($context, $data);
နောက်ဆုံးတွင် Hash_Final () function ကို သုံး. Hash တွက်ချက်မှုကိုအဆုံးသတ်ရန် Hash_Final () function ကိုသုံးပါ။
$hash = hash_final($context);
echo "The hash value is: " . $hash;
SHA256 hash တန်ဖိုးကို generate လုပ်ရန် hash_final () function ကိုမည်သို့အသုံးပြုရမည်ကိုပြသသည့်ဥပမာပြည့်စုံသောဥပမာတစ်ခုမှာ -
<?php
// ဖြစ်ပေါ်လာခြင်းSHA256Hash အခြေအနေ
$context = hash_init('sha256');
// ဒေတာကို update လုပ်ပါ
$data = "This is some data to hash.";
hash_update($context, $data);
// နောက်ဆုံး hash အကျဉ်းချုပ်ရယူပါ
$hash = hash_final($context);
// output ကို hash တန်ဖိုး
echo "The SHA256 hash of the data is: " . $hash;
?>
output သည် SHA256 hash digest ကိုကိုယ်စားပြုသော 64 ဇာတ်ကောင် hexadecimal string ကိုကိုယ်စားပြုလိမ့်မည်။
အကယ်. Hexadecimal Format အစား Binary format နဲ့ binary format နဲ့သင် binary format နဲ့ရချင်ရင် Raw_OutPut parameter ကို စစ်မှန်တဲ့ နေရာကိုသတ်မှတ်နိုင်ပါတယ်။ ၎င်းသည်အချက်အလက်များကိုဒေတာဘေ့စ်သို့သိုလှောင်ခြင်းကဲ့သို့သော application တစ်ခုအတွက်ပိုမိုအသုံးဝင်နိုင်သည်။
$binary_hash = hash_final($context, true);
echo "The raw hash value is: " . bin2hex($binary_hash); // output ကို hexadecimal string ကိုဖြစ်ပါတယ်
သင် URL ၏ hash ကိုတွက်ချက်လိုပါက hash_final () သည် ၎င်းကိုအောင်မြင်ရန်ကူညီနိုင်သည်။ Hash_Untate () ကို hash_update () ကိုပေါင်းစပ်။ url ၏ hash တန်ဖိုးကိုရရှိရန်ကျွန်ုပ်တို့အသုံးပြုနိုင်သည်။ ကျွန်ုပ်တို့ URL ၏ hash တန်ဖိုးကိုတွက်ချက်ရန်လိုသည်ဆိုပါစို့။
<?php
// ဖြစ်ပေါ်လာခြင်းSHA256Hash အခြေအနေ
$context = hash_init('sha256');
// ဒါကငါတို့ hash တွက်ချက်ချင်တာကဆိုပါစို့URL
$url = "https://gitbox.net/example/page";
// အသစ်လုပ်URLအချက်များ
hash_update($context, $url);
// Hash အကျဉ်းချုပ်ရယူပါ
$hash = hash_final($context);
// output ကို hash တန်ဖိုး
echo "The hash of the URL is: " . $hash;
?>
ဤဥပမာတွင်ကျွန်ုပ်တို့သည် url https://gitbox.net/exampe/page တွင် Sha256 hash digest ကိုတွက်ချက်သည်။ hash_final () function ကိုအသုံးပြုသောအခါ URL ၏အရှည်သို့မဟုတ်အကြောင်းအရာမခွဲခြားဘဲပုံမှန်မဟုတ်သောအရှည် hash ကိုအမြဲပြန်ပို့သည်။
Hash_final () သည် PHP တွင်အလွန်အစွမ်းထက်သော function တစ်ခုဖြစ်သည်။ ဖိုင်အကြောင်းအရာ, string, or url စသည်ဖြစ်စေ, url စသည်ဖြစ်စေ, hash တန်ဖိုးများကိုထုတ်လုပ်ရန်၎င်းကိုကျွန်ုပ်တို့အသုံးပြုနိုင်သည်။ hash_final () အသုံးပြုမှုကိုကျွမ်းကျင်မှုသည်သင့်အား Hash algorithms ကိုပိုမိုနားလည်သဘောပေါက်ရန်နှင့်ကျင့်သုံးခြင်းနှင့်ကျင့်သုံးခြင်းနှင့်ဒေတာသမာဓိစစ်ဆေးခြင်းစွမ်းရည်ကိုတိုးတက်စေသည်။