PHP တွင် serialize function သည်ရှုပ်ထွေးသောဒေတာတည်ဆောက်ပုံများ (ဥပမာ array, objects စသဖြင့်) strings များသို့ပြောင်းလဲခြင်းအတွက်ယန္တရားတစ်ခုဖြစ်သည်။ ရှုပ်ထွေးသောဒေတာအဆောက်အအုံများကိုထိရောက်စွာသိမ်းဆည်းရန် PHP ၏ Serialize function ကိုမည်သို့အသုံးပြုရမည်ကိုလေ့လာမည်။
Serialize ဆိုသည်မှာ PHP built-in function တစ်ခုဖြစ်သည်။ ဤ string သည် PHP ဒေတာဖွဲ့စည်းပုံ (ဥပမာ array များ, အရာဝတ်ထုများစသဖြင့်) သည်လိုအပ်သည့်အခါ unserialize function မှမူရင်း PHP variable ကိုပြန်လည်ရယူနိုင်ပါသည်။
string serialize ( mixed $value )
$ တန်ဖိုး - serialized ခံရဖို့ variable ကို။ (အရာဝတ်ထုများနှင့် arrays အပါအ 0 င်) ဒေတာအမျိုးအစားတစ်ခုဖြစ်နိုင်သည်။
ပြန်လာတန်ဖိုး - ပေးထားသော variable ကို၏ serialized ကိုယ်စားပြုမှုတစ်ခု string ကိုပြန်ပို့။
သင့်တွင်ရှုပ်ထွေးသောခင်းကျင်းခြင်းသို့မဟုတ်အရာဝတ်ထုတစ်ခုရှိသည်ဆိုပါစို့။ ၎င်းကိုဒေတာဘေ့စ်သို့မဟုတ်ဖိုင်တွင်သိမ်းဆည်းလိုသည်ဆိုပါစို့။ ဤကိစ္စတွင် Serialize သည် အချက်အလက်များကိုသိုလှောင်ထားသော string format အဖြစ်ပြောင်းလဲရန်ကူညီနိုင်သည်။ ဤတွင်ရိုးရှင်းသောဥပမာတစ်ခုဖြစ်သည်။
$data = array(
'username' => 'john_doe',
'email' => '[email protected]',
'roles' => array('admin', 'editor')
);
// အသုံးပြု serialize function ကို string သို့ဒေတာကူး
$serializedData = serialize($data);
// serialized ဒေတာကိုဖိုင်တစ်ခုထဲသို့ထည့်ပါ
file_put_contents('data.txt', $serializedData);
ဤဥပမာတွင်ကျွန်ုပ်တို့သည် Usernames, အီးမေးလ်များနှင့်အခန်းကဏ် in များပါ 0 င်သည့်ရှုပ်ထွေးသောအချက်အလက်ဖွဲ့စည်းပုံကို ဦး စွာဖန်တီးသည်။ ထို့နောက်ကျွန်ုပ်တို့သည်၎င်းကို string တစ်ခုထဲသို့ပြောင်းရန်နှင့် ဒေတာ အမည်ရှိဖိုင်တွင်သိမ်းဆည်းရန် Serialize function ကိုအသုံးပြုသည်။
ဒေတာများကို serialized နှင့်သိုလှောင်ထားပြီးသည်နှင့်၎င်းကိုမည်သည့်အချိန်တွင်မဆိုမူလ PHP ဒေတာတည်ဆောက်ပုံကိုပြန်ယူနိုင်သည်။ ဤလုပ်ငန်းစဉ်ကို unserialize function ဖြင့်ပြုလုပ်သည်။
// ဖိုင်တစ်ခုမှ Serialize အချက်အလက်များကိုဖတ်ပါ
$serializedData = file_get_contents('data.txt');
// အသုံးပြု unserialize function ကိုပြန်လည်ထူထောင်ရေးဒေတာ
$data = unserialize($serializedData);
print_r($data);
unserialize မှတဆင့်ကျွန်ုပ်တို့သည်ဖိုင်တွင်သိမ်းဆည်းထားသော Serial Data ကိုဖိုင်တွင်မူလခင်းကျင်းရေးတည်ဆောက်ပုံသို့ပြန်လည်ရယူနိုင်သည်။
serialize နှင့် unserialize များတွင်ရှုပ်ထွေးသောဒေတာများသို့မဟုတ်အရာဝတ်ထုများကဲ့သို့) လိုအပ်သောဖြစ်ရပ်များတွင်မကြာခဏအသုံးပြုလေ့ရှိသည်။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည်အရာဝတ်ထုများကိုဒေတာဘေ့စ်တွင်သိမ်းဆည်းခြင်းနှင့်သိမ်းဆည်းခြင်းများကိုသိုလှောင်သိမ်းဆည်းနိုင်ပြီးအချက်အလက်များကိုသိမ်းဆည်းခြင်းနှင့်ဂီယာသို့အီးမေးလ်ပို့နိုင်သည်။
// အသုံးပြု curl ဝေးလံခေါင်သီသောဆာဗာသို့ Serialized ဒေတာများကိုပေးပို့ပါ
$ch = curl_init('https://gitbox.net/receiveData');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, ['data' => serialize($data)]);
curl_exec($ch);
PHP ၏ Session ယန္တရားသည်အသုံးပြုသူအချက်အလက်များကိုသိမ်းဆည်းရန် Serialize ကို အသုံးပြုရန်ဖြစ်သည်။ အသုံးပြုသူတစ် ဦး သည် 0 ဘ်ဆိုဒ်ကိုလာရောက်လည်ပတ်သည့်အခါ PHP သည်အသုံးပြုသူ၏ session ကို (ဥပမာစျေးဝယ်ခြင်း, အသုံးပြုသူအချက်အလက်များစသဖြင့်) 0 က်ဘ်ဆိုက် (ဥပမာစျေးဝယ်လှည်းများ,
// session တစ်ခုတည်ဆောက်ခြင်း
session_start();
$_SESSION['user'] = $data; // ဒေတာကိုပုံမှန်အားဖြင့် serialized လိမ့်မည်
cache လိုအပ်သော application များတွင် serialized data များသည်၎င်းကိုသိမ်းဆည်းရန်သာမန်နည်းလမ်းဖြစ်သည်။ ဥပမာအားဖြင့်ဖိုင်များသို့မဟုတ်ဒေတာဘေ့စ်များကို cache သိုလှောင်ခြင်း, ရှုပ်ထွေးသော array သို့မဟုတ်အရာဝတ်ထုများကိုအသုံးပြုခြင်းကိုအသုံးပြုခြင်း,
Serialize သည်အလွန်အသုံးဝင်သောကိရိယာတစ်ခုဖြစ်သော်လည်းတစ်ခါတစ်ရံတွင် ရှုပ်ထွေးသော data structures များပြုလုပ်နိုင်သည့်အခြားနည်းလမ်းများကိုရွေးချယ်နိုင်သည်။ JSON_enCode မှထုတ်လုပ်သော string သည် JSON format တွင်ရှိပြီးအခြားပရိုဂရမ်ဘာသာစကားများနှင့်ပလက်ဖောင်းများနှင့်အပြန်အလှန်ဆက်သွယ်ရန်ပိုမိုလွယ်ကူသည်။
Serialize - PHP ကိုအသုံးပြုခြင်းအတွက်သင့်တော်သော PHP - သတ်သတ်မှတ်မှတ်ဒေတာအမျိုးအစားများ (ဥပမာ - အရာဝတ်ထုများ, အရင်းအမြစ်များစသည်ဖြင့်) serialize လုပ်နိုင်သည်။
JSOR_CENDODEDDODE - ထုတ်လုပ်ထားသော string သည် JSON format တွင်ရှိပြီးအခြားဘာသာစကားများနှင့်လိုက်ဖက်ရန်ပိုမိုလွယ်ကူပြီး Cross-platform data data လဲလှယ်ရန်သင့်တော်သည်။
အရာဝတ်ထု Serialization : အရာဝတ်ထုတစ်ခု serialized ဖြစ်တဲ့အခါ PHP သည်အရာဝတ်ထု၏ဂုဏ်သတ္တိများအားလုံးကို Serialize လုပ်သည်။ အကယ်. သင်သည်အရာဝတ်ထု၏အခြေအနေကိုပြန်လည်ထူထောင်လိုပါက __WAKUP မှော်နည်းလမ်းတွင်အချို့သောလုပ်ငန်းများပြုလုပ်နိုင်သည်။
class User {
public $username;
public $email;
public function __wakeup() {
// ဒေတာဘေ့စ် connection ကိုပြန်လည်ရယူခြင်းသို့မဟုတ်အခြားလိုအပ်သောလုပ်ရပ်များလုပ်ဆောင်ပါ
}
}
စွမ်းဆောင်ရည် - အလွန်ကြီးမားသောအချက်အလက်တည်ဆောက်ပုံများနှင့်ဆက်ဆံရာတွင် ဆိုက်ရောက်မှု ၏ကွပ်မျက်ခြင်း၏ကွပ်မျက်မှုစွမ်းဆောင်ရည်ကိုထိခိုက်နိုင်သည်။
ဒေတာလုံခြုံရေး - Serialized Data တွင်အထိခိုက်မခံသောသတင်းအချက်အလက်များပါ 0 င်နိုင်သည်။ ထို့ကြောင့်သိုလှောင်ခြင်းသို့မဟုတ်ထုတ်လွှင့်သောအခါ,
အထက်ဖော်ပြပါအချက်များသည် PHP ၏ serialize function ကိုထိရောက်စွာသိမ်းဆည်းရန် PHP ၏ Serialize function ကိုမည်သို့အသုံးပြုရမည်ကိုအသေးစိတ်နိဒါန်းဖြစ်သည်။ ဤဆောင်းပါးသည် PHP Serialize function ကိုပိုမိုနားလည်ပြီးကျင့်သုံးရန်ကူညီနိုင်လိမ့်မည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။