လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP Session Automatic Saving Meriod ၏နောက်ကွယ်တွင် Shutdown Remplate ဖြစ်စဉ်ကိုအသေးစိတ်ရှင်းပြချက် - session_register_shutown function ကိုဘယ်လိုအလုပ်လုပ်သလဲ။

PHP Session Automatic Saving Meriod ၏နောက်ကွယ်တွင် Shutdown Remplate ဖြစ်စဉ်ကိုအသေးစိတ်ရှင်းပြချက် - session_register_shutown function ကိုဘယ်လိုအလုပ်လုပ်သလဲ။

M66 2025-05-25

Session_Start () PHP တွင် Session_Start () နှင့်တွေ့ဆုံမှုတစ်ခုစတင်ပြီးနောက်ကျွန်ုပ်တို့သည် session _write_close_Close () ကိုအတိအလင်းခေါ်ဆိုရန်မလိုအပ်ပါ။ script သည် Midway မှ ထွက်ပေါက် သို့မဟုတ်အဆုံးသတ်မည်ဆိုလျှင်ပင် PHP သည်အချက်အလက်များကို ဒေါ်လာ _session ဖြင့်အလိုအလျောက်သိမ်းဆည်းလိမ့်မည်။ ဤ "Auto-Save" ယန္တရား၏နောက်ကွယ်တွင်၎င်းသည်အလွန်အရေးကြီးသောမှတ်ပုံတင်ခြင်းယန္တရားတစ်ခုပေါ်တွင်အမှန်တကယ်မှီခိုသည် - session_register_shutdown ()

ဤဆောင်းပါးသည် PHP Life Cycle တွင် ပါ 0 င်သည့် လုပ်ငန်းခွင်တွင်အလုပ်လုပ်ပုံနှင့်၎င်း၏အခန်းကဏ် hass သည် PHP ၏ session အလိုအလျောက်ကယ်တင်ခြင်းလုပ်ငန်းစဉ်ကိုပိုမိုရှင်းလင်းစွာနားလည်ရန်အထောက်အကူပြုသည်။

1 ။ session_register_shutdown () ဘာလုပ်သလဲ။

Session_register_shutdown () သည် PHP မှပေးသော function တစ်ခုဖြစ်ပြီး session ကိုစတင်ပြီးနောက်ပိတ်ထားသောလုပ်ဆောင်မှုကိုမှတ်ပုံတင်ရန်အသုံးပြုသော PHP မှပေးသော function တစ်ခုဖြစ်သည်။ ဤလုပ်ဆောင်ချက်သည် script ကိုကွပ်မျက်ခံရသည့်အခါ (သို့မဟုတ်ဖျက်သိမ်းခြင်း) ကိုပြုလုပ်သောအခါအလိုအလျောက်ဟုအလိုအလျောက်ခေါ်ယူပြီးလက်ရှိ session data data ကိုသိမ်းဆည်းရန်အသုံးပြုသည်။ ၎င်း၏အဓိကလုပ်ဆောင်ချက်မှာစာလုံးသည်ပုံမှန်မဟုတ်သောပုံမှန်မဟုတ်သောအချက်အလက်များသည် ဒေါ်လာ _SIVES တွင်အချက်အလက်များကိုဆက်လက်တည်ရှိနေတုန်းပဲ။

ညီမျှ, ကျွန်ုပ်တို့လည်းနားလည်နိုင်သည် -

 session_register_shutdown();
// နှင့်ညီမျှ:
register_shutdown_function('session_write_close');

တစ်နည်းပြောရလျှင်, အတွင်းပိုင်း session_register_shutdown () သည် Register_ShutDown_Function ('session_write_close_Close_Close') ၏အပြုအမူကိုအမှန်တကယ် encapsulates ။

2 ။ session_register_shutdown () ကိုဘယ်အချိန်မှာခေါ်ရမလဲ။

ပုံမှန်အားဖြင့်သင် session_start () session တစ်ခုစတင်ရန်သင်ခေါ်ဆိုသောအခါ PHP သည် session_register_shutdown () ကို အလိုအလျောက်မှတ်ပုံတင်လိမ့်မည်။ ရိုးရှင်းတဲ့ဥပမာတစ်ခုကိုကြည့်ရအောင်။

 session_start();
$_SESSION['user'] = 'admin';
exit;

ထွက်ပေါက်ကို Midway ဟုခေါ်သည်ဆိုလျှင်ပင် session_wrawite_close_Close () ကို ကိုယ်တိုင်မခေါ်ပါ။ အသုံးပြုသူ = အက်မင် အချက်အလက်များကို session file သို့အောင်မြင်စွာရေးသားထားလိမ့်မည်။ ဤသည် သည် People_register_shutdown () မှမှတ်ပုံတင်ထားသော function ကိုအဘယ်ကြောင့်ဆိုသော်ဤသည်အတိအကျဖြစ်ပါတယ်။

3 ။ Shutdown function ကိုဘယ်လိုအလုပ်လုပ်သလဲ။

script ကွပ်မျက်ခံရသည့်အခါ PHP သည် Regisn_shutDown_Function () ကို မှတ်ပုံတင်ရန်။ ဤထိန်းချုပ်မှုများကိုအောက်ပါအခြေအနေများတွင်ကွပ်မျက်သည် -

  • အဆိုပါ script ကိုပုံမှန်ကွပ်မျက်ခဲ့သည်

  • ထွက်ပေါက် () သို့မဟုတ် သေဆုံး

  • ဆိုးဝါးသောအမှားများ (ဥပမာအားဖြင့်မှတ်ဉာဏ်ကုန်ရခြင်းစသဖြင့်) ဇာတ်ညွှန်းတွင်ဖြစ်ပွားခဲ့သည်။

PHP ၏ shutdown လုပ်ခြင်းလုပ်ငန်းစဉ်သည်အကြမ်းအားဖြင့်အောက်ပါအတိုင်းဖြစ်သည် -

  1. အားလုံး script ယုတ္တိဗေဒကွပ်မျက်ခံရသည်

  2. မှတ်ပုံတင်ထားသောမှတ်ပုံတင်ခြင်းလုပ်ဆောင်ချက်များ ( session_write_close ပါ 0 င်သည်)

  3. variable များကိုဖျက်ဆီးခြင်း, အရင်းအမြစ်များကိုဖြန့်ချိခြင်းကဲ့သို့သောသန့်ရှင်းရေးလုပ်ခြင်း

  4. client ကိုမှ output ကိုပါ 0 င်မှု

ထို့ကြောင့်, session_register_shutdown () မှမှတ်ပုံတင်ထားသော function ကိုဤအဆင့်တွင်ဤအဆင့်တွင်ဤအဆင့်တွင်ခေါ်ဆိုမှုအချက်အလက်များကိုမည်သည့် Exit Mode တွင်မှန်ကန်စွာသိမ်းဆည်းနိုင်ကြောင်းသေချာစေရန်ဤအဆင့်တွင်ခေါ်လိမ့်မည်။

4 ။ အရင်းအမြစ်ကုဒ်ရှုထောင့်၏အကျဉ်းချုပ်ခွဲခြမ်းစိတ်ဖြာခြင်း

PHP ၏အရင်းအမြစ်ကုဒ်အကောင်အထည်ဖော်မှုတွင် Session_register_shutdown () သည် store_write_Close () ကိုအမှန်တကယ်မှတ်ပုံတင်ပါ။ ၎င်း၏အဓိကယုတ္တိဗေဒကို Ext / Session / Session.c တွင်တွေ့နိုင်သည်။

 PHP_FUNCTION(session_register_shutdown)
{
    php_session_register_shutdown();
}

နှင့် php_session_register_shutdown () ဖုန်းခေါ်ဆိုလိမ့်မယ်:

 register_shutdown_function("session_write_close", NULL);

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

 register_shutdown_function('session_write_close');

ဒါဟာလုံးဝညီမျှသည်။

5 ။ ဘယ်အချိန်မှာ session_write_close_Close () ကိုကိုယ်တိုင်ဖုန်းဆက်ဖို့လိုပါသလား။

PHP သည် session_write_close_Close () ကိုအလိုအလျောက်ခေါ်ဆိုသော်လည်းအချို့သောအခြေအနေများတွင်၎င်းကိုကိုယ်တိုင်ခေါ်ဆိုပါလိမ့်မည်။ ဥပမာအားဖြင့်:

  1. သော့ခတ်ခြင်းကိုကြိုတင်ထုတ်ပေးပါ ။ PHP ၏ session သည်ဖိုင်သော့ခတ်ခြင်းအပေါ်အခြေခံသည်။ သင် session_write_close () ကိုမခေါ်ပါက scription သည်အခြားတောင်းဆိုမှုများကိုပိတ်ဆို့ခြင်းမဖြစ်နိုင်သည့်တိုင်အောင် session file ကိုသော့ခတ်လိမ့်မည်။

  2. တစ်ပြိုင်တည်းတောင်းဆိုချက် - အကယ် . သင်သည်တစ်ပြိုင်တည်းလုပ်ဆောင်ရန်လိုအပ်သည့်တစ်ပြိုင်နက်တည်းတောင်းဆိုမှုများရှိပါက တစ်ပြိုင်တည်း မမှီခိုပါကတစ် ဦး နှင့်တစ် ဦး မှီခိုခြင်းမပြုပါက,

  3. စွမ်းဆောင်ရည်ကိုတိုးတက်အောင်ပြုလုပ်ခြင်း - ရေရှည် scripts များဖြင့်တတ်နိုင်သမျှအမြန်ဆုံးလေ့လာခြင်းသည်မလိုအပ်သောအရင်းအမြစ်သုံးစွဲမှုကိုရှောင်ရှားနိုင်သည်။

ဥပမာ -

 session_start();
$user = $_SESSION['user'];
session_write_close(); // ကြိုတင်သော့ခတ်ကိုဖြန့်ချိ

// နောက်ဆက်တွဲယုတ္တိဗေဒသည်သက်ရောက်မှုမရှိပါ session အချက်များ
file_get_contents('https://m66.net/api/do-something');

6 ။ အကျဉ်းချုပ်

PHP ၏ Session Automatic Saving Mereism နောက်ကွယ်မှ session_register_shutdown () function မှတဆင့်အကောင်အထည်ဖော်သည်။ screen_write_close_Close () ကိုအလိုအလျောက်ခေါ်ဆိုရန် STARKITE_CLOSE () ကို အလိုအလျောက်ခေါ်ဆိုရန် Shutdown function ကိုမှတ်ပုံတင်သည်။ ထို့ကြောင့် session data ကိုမှန်ကန်စွာသိမ်းဆည်းထားကြောင်းသေချာစေသည်။

ဤယန္တရားကိုနားလည်ခြင်းသည်ကြံ့ခိုင်သောကုဒ်များကိုပိုမိုရေးနိုင်ရန်သာမကစွမ်းဆောင်ရည်မြင့်မားသောဖြေရှင်းချက်များတွင်ထိရောက်သောဖြေရှင်းနည်းများကိုထောက်ပံ့ပေးသည်။ ဤအခြေခံအသေးစိတ်အချက်အလက်များကိုကျွမ်းကျင်ရန်ကျွမ်းကျင်မှုသည်မြင့်မားသော PHP developer တိုင်းအတွက်အရေးပါသောစိုက်ပျိုးမှုဖြစ်သည်။

  • သက်ဆိုင်သောတက်(ဂ်)များ:

    session