PHP တွင် Session သည် စာမျက်နှာများအကြားအသုံးပြုသူအချက်အလက်များကိုသိမ်းဆည်းရန်နှင့် pass လုပ်ရန်သာမန်နည်းလမ်းဖြစ်သည်။ Session ကို အသုံးပြုခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်အသုံးပြုသူနှင့်ဆာဗာမှတောင်းဆိုမှုများကိုတောင်းဆိုမှုများအကြားပြည်နယ်ကိုဆက်လက်ထိန်းသိမ်းထားနိုင်ပြီးတောင်းဆိုမှုတစ်ခုစီအတွက်တူညီသောသတင်းအချက်အလက်များကိုပြန်လည်ရယူရန်လိုအပ်ခြင်းကိုရှောင်ရှားနိုင်သည်။
တခါတရံတွင်ကျွန်ုပ်တို့သည်ရှုပ်ထွေးသောဒေတာအဆောက်အအုံများကို session တစ်ခုအဖြစ်သိမ်းဆည်းရန်, PHP တွင် serialize function သည်အလွန်အသုံးဝင်သည်, ၎င်းသည်ရှုပ်ထွေးသော data အမျိုးအစားများကိုကြိုးများအဖြစ်ပြောင်းလဲခြင်း, နောက်ဆက်တွဲတောင်းဆိုမှုများတွင်မူလဒေတာတည်ဆောက်ပုံကိုပြန်လည်တည်ဆောက်ရန်ခွင့်ပြုသည်။
Serialize function သည်ခင်းကျင်းခြင်းသို့မဟုတ်အရာဝတ်ထုတစ်ခုကို string တစ်ခုသို့ပြောင်းလဲနိုင်သည်။ ၎င်းကို session တစ်ခုတွင်သိမ်းဆည်းထားရန်ခွင့်ပြုသည်။ အပြန်အလှန်အားဖြင့် unserialize function ကိုမူရင်းခင်းကျင်းသို့မဟုတ်အရာဝတ်ထုသို့ string ကိုပြန်လည်ပြုပြင်သည်။
ဒေတာသိုလှောင်မှုအတွက် Serialize function ကိုအသုံးပြုနည်းနှင့် PHP session တစ်ခုတွင်ဖြတ်သန်းခြင်း၏ဥပမာတစ်ခုမှာဥပမာတစ်ခုဖြစ်သည်။
<?php
// စကားပြောဆိုမှုတစ်ခုစတင်ပါ
session_start();
// ရှုပ်ထွေးသော array တစ်ခုဖန်တီးပါ
$data = [
'username' => 'john_doe',
'email' => '[email protected]',
'preferences' => ['theme' => 'dark', 'notifications' => 'enabled']
];
// အသုံးပြု serialize function ကို string ကိုမှ array ပြောင်းလဲ
$serialized_data = serialize($data);
// session တစ်ခုသို့ serialized ဒေတာကိုသိုလှောင်ပါ
$_SESSION['user_data'] = $serialized_data;
// သိုလှောင်ထားသောဒေတာများကိုပုံနှိပ်ပါ
echo 'Data has been serialized and stored in session.<br>';
// အဆိုပါပေးပို့အကြောင်းအရာ link ကိုမှတဆင့်ဝင်ရောက်နိုင်ပါတယ်
echo '<a href="https://gitbox.net/user_page.php">Go to user page</a>';
?>
အထက်ပါကုဒ်တွင်အသုံးပြုသူအချက်အလက်ပါ 0 င ်သော array တစ်ခုဖန်တီးပါ။ ဤနည်းအားဖြင့်အသုံးပြုသူသည်အခြားစာမျက်နှာများသို့လာရောက်သည့်အခါဒေတာများကိုဆက်လက်တည်ရှိနိုင်လိမ့်မည်။
စာမျက်နှာဖွင့်သောအခါသိုလှောင်ထားသည့် Serial data အချက်အလက်များကိုပြန်လည်ထူထောင်ရန် unserialize function ကိုသုံးနိုင်သည်။ ဤတွင်မည်သို့ပြုလုပ်ရမည်ကိုဥပမာတစ်ခုဖြစ်သည်။
<?php
// စကားပြောဆိုမှုတစ်ခုစတင်ပါ
session_start();
// အသုံးပြုသူအချက်အလက်များကို session တွင်သိမ်းဆည်းထားခြင်းရှိမရှိစစ်ဆေးပါ
if (isset($_SESSION['user_data'])) {
// session တစ်ခုကနေ serialized string ကိုဒေတာရယူပါ
$serialized_data = $_SESSION['user_data'];
// အသုံးပြု unserialize function ကိုမူရင်းခင်းကျင်းရန်
$data = unserialize($serialized_data);
// ပြန်လည်ထုတ်ယူဒေတာပုံနှိပ်
echo 'Username: ' . $data['username'] . '<br>';
echo 'Email: ' . $data['email'] . '<br>';
echo 'Theme: ' . $data['preferences']['theme'] . '<br>';
echo 'Notifications: ' . $data['preferences']['notifications'] . '<br>';
} else {
echo 'No user data found in session.';
}
?>
ဤဥပမာတွင်အသုံးပြုသူအချက်အလက်များကို $ _session တွင်သိမ်းဆည်းထားခြင်းရှိမရှိကို ဦး စွာစစ်ဆေးသည်။ အကယ်. ၎င်းတည်ရှိပါကသက်ဆိုင်ရာအသုံးပြုသူ၏အချက်အလက်များအတွက် Serialized String နှင့် output သို့ restore လုပ်ရန် unserialize function ကိုအသုံးပြုသည်။
PHP developer များသည် serialize နှင့် unserialize function များကိုအသုံးပြုခြင်းအားဖြင့် PHP developer များသည်ရှုပ်ထွေးသောဒေတာအဆောက်အအုံများကိုအလွယ်တကူသိမ်းဆည်းရန်နှင့်လိုအပ်သည့်အခါဤအချက်အလက်များကိုပြန်လည်ရယူနိုင်သည်။ ဤချဉ်းကပ်မှုသည်စာမျက်နှာမျိုးစုံတွင်အချက်အလက်များကိုဖြတ်ကျော်ရန်လိုအပ်သည့် application များအတွက်အလွန်အသုံးဝင်သည်။
အချက်အလက်များကိုသိမ်းဆည်းရန် session ကိုအသုံးပြုသောအခါ session ၏လုံခြုံရေးကိုကာကွယ်ရန်နှင့်အစည်းအဝေးပြန်ပေးဆွဲခြင်းနှင့်အချက်အလက်ချိုးဖောက်မှုများကိုရှောင်ရှားရန်ဂရုပြုပါ။