PHP တွင် unset () သည် variable များသို့မဟုတ် array များတွင် element များကိုဖျက်ဆီးရန်အသုံးများသော function တစ်ခုဖြစ်သည်။ ကျွန်ုပ်တို့သည် hyperglobal array များ (ဥပမာ $ _post , $ _get , $ _session စသည်) ဖြစ်သည့်အခါကျွန်ုပ်တို့သည်ဤ arrays မှတိကျသော variable ကိုဖယ်ရှားရန်လိုအပ်နိုင်သည်။ ဤဆောင်းပါးသည် hyperglobal arrays များမှ variary များကို variable များမှ variable များကိုဖယ်ရှားရန် UNSONT () မည်သို့အသုံးပြုရမည်ကိုအသေးစိတ်ရှင်းပြပါလိမ့်မည်။
unset () တစ်ခုသို့မဟုတ်တစ်ခုထက်ပိုသော variable တွေကိုဖျက်ဆီးရန်အသုံးပြုသည်။ Array element တွေကိုဖယ်ရှားတဲ့အခါမှာ unray ရဲ့သော့ကိုသတ်မှတ်ပြီးအဲဒါကိုဖျက်ပစ်ဖို့ unset () ကို တိုက်ရိုက်သုံးနိုင်တယ်။ အခြေခံ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
<span><span><span class="hljs-keyword">unset</span></span><span>(</span><span><span class="hljs-variable">$array</span></span><span>[</span><span><span class="hljs-variable">$key</span></span><span>]);
</span></span>ဥပမာအားဖြင့်, ကျွန်ုပ်တို့တွင် အသုံးပြုသော Hyperglobal array တစ်ခုရှိသည်ဆိုပါစို့။ အသုံးပြုသူမှတင်ပြသောပုံစံဒေတာကိုကျွန်ုပ်တို့ဖျက်လိုပါက (ဥပမာ, key name username ) ကိုဖျက်လိုပါကကျွန်ုပ်တို့ဤသို့ပြုလုပ်နိုင်သည်ဆိုပါစို့။
<span><span><span class="hljs-keyword">unset</span></span><span>(</span><span><span class="hljs-variable">$_POST</span></span><span>[</span><span><span class="hljs-string">'username'</span></span><span>]);
</span></span>PHP တွင် $ _get , $ _post , $ _session , $ _cookie , စသည်တို့အားလုံးသည်အသုံးပြုသူ၏ထည့်သွင်းမှုအချက်အလက်များ, တစ်ခါတစ်ရံကျွန်ုပ်တို့သည်တောင်းဆိုမှုကိုလုပ်ဆောင်သောအခါ element တစ်ခုကိုဖျက်ရန်လိုအပ်နိုင်သည်။ ဤတွင်အချို့သောဘုံအသုံးပြုမှုအခြေအနေများမှာ -
URL ရှိ Query String တွင်မလိုအပ်သော parameters များပါ 0 င်သည့်အခါ၎င်းကို unset () မှတဆင့်ဖျက်ပစ်နိုင်သည်။ ဥပမာအားဖြင့်:
<span><span><span class="hljs-keyword">unset</span></span><span>(</span><span><span class="hljs-variable">$_GET</span></span><span>[</span><span><span class="hljs-string">'id'</span></span><span>]);
</span></span>၎င်းသည် ID Parameter ကို $ _GET မှဖယ်ရှားလိမ့်မည်။
Session Management သည်များသောအားဖြင့်အသုံးပြုသူ login status နှင့်အခြားအချက်အလက်များကို $ _Session Array မှတဆင့်သိုလှောင်ထားသည်။ အသုံးပြုသူသည်မှတ်တမ်းတင်ပါကကျွန်ုပ်တို့သည်တိကျသော session variable များကိုဖျက်နိုင်သည်။
<span><span><span class="hljs-keyword">unset</span></span><span>(</span><span><span class="hljs-variable">$_SESSION</span></span><span>[</span><span><span class="hljs-string">'user'</span></span><span>]);
</span></span>သင် session တစ်ခုလုံးကိုဖျက်လိုပါက session_destroy () ကို သုံးနိုင်သည်။
unset () က cookies များကို browser မှတိုက်ရိုက်မဖျက်နိုင်သော်လည်း၎င်းကိုသက်တမ်းကုန်သွားသော cookie ကိုသတ်မှတ်ခြင်းဖြင့် "ဖျက်ပစ်" နိုင်သည်။
<span><span><span class="hljs-title function_ invoke__">setcookie</span></span><span>(</span><span><span class="hljs-string">'username'</span></span><span>, </span><span><span class="hljs-string">''</span></span><span>, </span><span><span class="hljs-title function_ invoke__">time</span></span><span>() - </span><span><span class="hljs-number">3600</span></span><span>); </span><span><span class="hljs-comment">// တည်ဆောက်သည် cookie သက်တမ်းကုန်ဆုံးချိန်သည်လွန်ခဲ့သောတစ်နာရီအကြာဖြစ်သည်</span></span><span>
</span></span>ဤနည်းအားဖြင့်အသုံးပြုသူ၏ browser သည် username cookie ကိုဖျက်ပစ်လိမ့်မည်။
unset () သည်အလွန်အစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သော်လည်း၎င်းကိုအသုံးပြုသောအခါအာရုံစိုက်ရန်အသေးစိတ်အချက်အလက်များရှိသည်။
unset () hyperglobal ခင်းကျင်းမှုတွင် element တစ်ခုကိုဖျက်ပစ်နိုင်သော်လည်း Hyperglobal Array တစ်ခုလုံးကိုမဖျက်နိုင်ပါ။ ဥပမာအားဖြင့်, အောက်ပါကုဒ်:
<span><span><span class="hljs-keyword">unset</span></span><span>(</span><span><span class="hljs-variable">$_POST</span></span><span>);
</span></span>၎င်းသည် $ _post array တစ်ခုလုံးကိုမဖျက်ပါ။ ၎င်းသည် $ _post array ကိုရည်ညွှန်းသည်။ $ _post Array ကိုယ်တိုင်သည်ရှိနေဆဲဖြစ်ပြီး၎င်းအတွင်းရှိဒြပ်စင်များကိုဆက်လက်ရယူနိုင်ဆဲဖြစ်သည်။
$ _Globals array ကိုကမ္ဘာအနှံ့အပြားတွင် variable များကိုဝင်ရောက်ကြည့်ရှုရန်နှင့်ပြုပြင်ရန်အသုံးပြုသည်။ $ _Globals သည် PHP ၏ပြည်တွင်းအကောင်အထည်ဖော်မှု၏အစိတ်အပိုင်းတစ်ခုဖြစ်သောကြောင့် unset () သည် aclowals မှ element များကိုမဖယ်ရှားနိုင်ပါ။ ဘာဖြစ်လို့လဲဆိုတော့ $ _Globals Array သည် PHP Runtime ၏ကမ္ဘာလုံးဆိုင်ရာပတ် 0 န်းကျင်ကိုအနီးကပ်ကွယ်ပြုထားသဖြင့်ဖြစ်သည်။
အကယ်. variable ကိုရည်ညွှန်းကိုးကားပါက array element ကို unray ကို အသုံးပြုခြင်းကိုပယ်ဖျက်လိုက်သောအခါရည်ညွှန်းချက်ကိုတိုက်ရိုက်အကျိုးသက်ရောက်လိမ့်မည်မဟုတ်ပါ။ ဥပမာအားဖြင့်:
<span><span><span class="hljs-variable">$a</span></span><span> = </span><span><span class="hljs-number">10</span></span><span>;
</span><span><span class="hljs-variable">$b</span></span><span> = &</span><span><span class="hljs-variable">$a</span></span><span>;
</span><span><span class="hljs-keyword">unset</span></span><span>(</span><span><span class="hljs-variable">$a</span></span><span>); </span><span><span class="hljs-comment">// ဖျက်ပါ $a ပေြာင်းလဲတတ်သော</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$b</span></span><span>; </span><span><span class="hljs-comment">// နေဆဲ output ကို 10,အကေြာင်းမှာ $b နေဆဲကိုးကား $a</span></span><span>
</span></span>foreach loop ရှိခင်းကျင်းသောဒြပ်စင်များကိုဖျက်ရန်သင် unset () ကို အသုံးပြုသည့်အခါသတိထားပါ။ Forach သည် လက်ရှိခင်းကျင်းသောဒြပ်စင်တစ်ခု၏မိတ္တူတစ်စောင်ကိုဖန်တီးလိမ့်မည် ။ ဥပမာအားဖြင့်:
<span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$_POST</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$key</span></span><span> => </span><span><span class="hljs-variable">$value</span></span><span>) {
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$key</span></span><span> == </span><span><span class="hljs-string">'username'</span></span><span>) {
</span><span><span class="hljs-keyword">unset</span></span><span>(</span><span><span class="hljs-variable">$_POST</span></span><span>[</span><span><span class="hljs-variable">$key</span></span><span>]);
}
}
</span></span>unset () $ _post ['username' ကိုပယ်ဖျက်သော်လည်း For Beop သည်ကွင်းဆက်အတွင်း array မိတ္တူတစ်စောင်ကိုဖန်တီးထားသောကြောင့် foreach သည် loop အဆုံးသတ်ပြီးနောက် _post array သည်အတူတူပင်ဖြစ်နေသည်။ ထိုကဲ့သို့သော ပြ problems နာများကိုရှောင်ရှားရန်သင်ဖျက်ရန်သင်ဖျက်လိုသောဒြပ်စင်များကိုပထမ ဦး ဆုံးစုဆောင်းခြင်းကိုပထမ ဦး ဆုံးစဉ်းစားရန်,
PHP တွင် unset () သည် hyperglobal ခင်းကျင်းမှုမှ variable များကိုဖယ်ရှားရန်လွယ်ကူသောနည်းလမ်းတစ်ခုဖြစ်သည်။ unset () ကို မှန်ကန်စွာအသုံးပြုခြင်းအားဖြင့်သင်သည် hyperglobal အချက်အလက်များကိုထိထိရောက်ရောက်စီမံနိုင်သည်။ သို့သော်, ဥပမာအားဖြင့်မှားယွင်းစွာမဖြည့်ဆည်းပေးနိုင်သည့်ပြောင်းလဲခြင်းသို့မဟုတ်မဖြည့်ဆည်းပေးနိုင်သည့်ပြောင်းလဲမှုများကိုရှောင်ရှားရန်၎င်းကိုအသုံးပြုသောအခါအသေးစိတ်အချက်အလက်များကိုလည်းဂရုပြုသင့်သည်။