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

PHP အချက်အလက်များကိုစာသားဖိုင်တစ်ခုအဖြစ်သိုလှောင်ရန် Serialize ကိုမည်သို့အသုံးပြုရမည်နည်း။

gitbox 2025-05-19

PHP တွင် Serialize () function သည် php variable ကို (ဥပမာ array, အရာဝတ်ထုများစသည်တို့) ကိုသိုလှောင်ထားသည့် string တစ်ခုအဖြစ်ပြောင်းလဲနိုင်သည်။ အချက်အလက်များကိုဖိုင်များသို့သိမ်းဆည်းရန်သို့မဟုတ်ကွန်ယက်ပေါ်တွင်လွှဲပြောင်းရန်ဤလုပ်ဆောင်ချက်ကိုမကြာခဏအသုံးပြုလေ့ရှိသည်။ ဤဆောင်းပါးတွင်အချက်အလက်များကိုစာသားဖိုင်တစ်ခုအဖြစ်သိမ်းဆည်းရန် Serialize () function ကိုမည်သို့အသုံးပြုရမည်ကိုဆွေးနွေးပါမည်။

အဆင့် 1 - ဒေတာကိုပြင်ဆင်ပါ

ပထမ ဦး စွာကျွန်ုပ်တို့သည်များသောအားဖြင့် array, object အမျိုးအစားတစ်ခုဖြစ်နိုင်သောအချက်အလက်အချို့ကိုပြင်ဆင်ရန်လိုအပ်သည်။ ဤတွင်ကျွန်ုပ်တို့သည်ဥပမာအားဖြင့်ခင်းကျင်းမှုကိုဥပမာတစ်ခုအဖြစ်ယူသည်။

 $data = array(
    'name' => 'John Doe',
    'email' => '[email protected]',
    'age' => 28,
    'skills' => array('PHP', 'JavaScript', 'HTML')
);

အဆင့် 2 - အချက်အလက်များကို string သို့ပြောင်းရန် Serialize () function ကိုသုံးပါ

Rearray $ ဒေတာကို string တစ်ခုသို့ပြောင်းရန် Serialize () function ကိုသုံးပါ။

 $serializedData = serialize($data);

ယခု $ serializeddata variable ကိုဖိုင်တစ်ခုသို့အလွယ်တကူသိမ်းဆည်းထားနိုင်သည့် string တွင်သိမ်းဆည်းထားသည်။

အဆင့် 3. စာနယ်ဇင်းဖိုင်အတွက် serialized data ကိုရေးပါ

ထို့နောက်ကျွန်ုပ်တို့သည် Serialized data ကိုစာသားဖိုင်သို့သိမ်းဆည်းသည်။ ဖိုင်တစ်ခုသို့ကြိုးများရေးရန် PHP ၏ File_Propar_Contontents () function ကိုသုံးနိုင်သည်။

 $file = 'data.txt';  // ဖိုင်နာမည်
file_put_contents($file, $serializedData);

ဤနည်းအားဖြင့် Serialize အချက်အလက်များကို ဒေတာ အမည်ရှိဖိုင်တွင်သိမ်းဆည်းထားသည်။

အဆင့် 4 - ဖိုင်မှအချက်အလက်များကိုဖတ်ပြီး deserialize လုပ်ပါ

ဤဖိုင်ကိုသင်ဖတ်ရှုပြီးမူရင်းဒေတာဖွဲ့စည်းပုံကိုပြန်ယူရန်လိုအပ်သည့်အခါဖိုင်များ contents များကိုဖတ်ရန်ဖိုင်ကိုဖတ်ရန် file_get_contontents () function ကိုသုံးနိုင်သည်။

 $storedData = file_get_contents($file);
$unserializedData = unserialize($storedData);

ဤအချက်မှာ ဒေါ်လာ unserialvata တွင် မူရင်းခင်းကျင်းဖွဲ့စည်းပုံတွင်မူရင်းခင်းကျင်းမှုတည်ဆောက်မည်ဖြစ်သည်။

နမူနာကုဒ်

 <?php
// ဒေတာပြင်ဆင်မှု
$data = array(
    'name' => 'John Doe',
    'email' => '[email protected]',
    'age' => 28,
    'skills' => array('PHP', 'JavaScript', 'HTML')
);

// ဒေတာ Serialize
$serializedData = serialize($data);

// serialized ဒေတာများကိုစာသားဖိုင်သို့သိမ်းဆည်းပါ
$file = 'data.txt';
file_put_contents($file, $serializedData);

// ဖိုင်တစ်ခုမှဒေတာများကိုဖတ်ပြီး deserialize လုပ်ပါ
$storedData = file_get_contents($file);
$unserializedData = unserialize($storedData);

// deserialized ဒေတာပုံနှိပ်
print_r($unserializedData);
?>

မှတ်သားရန်အရာ

  1. File Permissions - အချက်အလက်များကိုပစ်မှတ်ထားဖိုင်ကိုအချက်အလက်ရေးရန်သင့်အနေဖြင့်ခွင့်ပြုချက်ရှိပါသလား။

  2. ဒေတာလုံခြုံရေး - သုံးစွဲသူများမှအချက်အလက်များကိုစွန့်စားမှုအလားအလာရှိသောအန္တရာယ်များကိုရှောင်ရှားရန် (ဥပမာ Object Injection Attack Attemptions) သငျသညျအများအားဖြင့် deserialization စဉ်အတွင်းအတန်းအမျိုးအစားကိုကန့်သတ်ရန် unerialize () function ကို၏ဒုတိယ parameter ကိုသုံးနိုင်သည်သို့မဟုတ်အခြားလုံခြုံစိတ်ချရသောနည်းလမ်းများသုံးပါ။

  3. စွမ်းဆောင်ရည်ထည့်သွင်းစဉ်းစားမှုများ - serialization နှင့် deserialization လုပ်ငန်းများသည်အလွန်ကြီးမားသောဒေတာအစုများအတွက်အရင်းအမြစ်များပိုမိုများပြားလာနိုင်သည်။ သိုလှောင်မှုနှင့်စာဖတ်ခြင်းယန္တရားများကိုလိုအပ်သလိုအကောင်းဆုံးလုပ်နိုင်သည်။

အကျဉ်းချုပ်

PHP ၏ serialize ( ) လုပ်ဆောင်ချက်များကိုအသုံးပြုခြင်းဖြင့်ဒေတာများကိုစာသားဖိုင်တစ်ခုအဖြစ်သင်အလွယ်တကူသိမ်းဆည်းနိုင်သည်။ ဤနည်းလမ်းကို cache, session စီမံခန့်ခွဲမှုသို့မဟုတ် Cross-platform data transmission စသည့်အခြေအနေများတွင်မကြာခဏအသုံးပြုသည်။ ဤအခြေခံလုပ်ဆောင်မှုများကိုသင်ကျွမ်းကျင်နေသမျှကာလပတ်လုံးဒေတာသိုလှောင်မှုနှင့်ပြန်လည်ထူထောင်ရေးလုပ်ငန်းများကိုကိုင်တွယ်ရန် PHP ကိုထိရောက်စွာအသုံးပြုနိုင်သည်။