__unset နည်းလမ်း
__unset နည်းလမ်းသည် PHP ရှိ မှော်ဆန်သော နည်းလမ်းများထဲမှ တစ်ခု ဖြစ်ပါသည်။ ၎င်းသည် unset function ကို အသုံးပြု၍ မရှိသော သို့မဟုတ် မရောက်ရှိနိုင်သော object ၏ ဂုဏ်သတ္တိတစ်ခုကို ဖျက်ရန် ကြိုးစားသောအခါ အလိုအလျောက် ခေါ်ဆိုပါသည်။ ဤနည်းလမ်းသည် parameter တစ်ခုကို လက်ခံပါသည် - ဖျက်ရန် ကြိုးစားနေသော ဂုဏ်သတ္တိ၏ အမည်။
ဖွဲ့စည်းပုံ
public function __unset(string $name): void
ဥပမာ
မှော်ဆန်သော နည်းလမ်း __unset ပါရှိသော class တစ်ခုကို ဖန်တီးပြီး မရှိသော ဂုဏ်သတ္တိကို ဖျက်ရန် ကြိုးစားကြည့်ပါမည်။
<?php
class MyClass {
private $data = ['a' => 1, 'b' => 2];
public function __unset($name) {
echo "Attempting to unset '$name'\n";
unset($this->data[$name]);
}
}
$obj = new MyClass();
unset($obj->a);
unset($obj->c);
?>
ကုဒ် လုပ်ဆောင်ချက်၏ ရလဒ်။
Attempting to unset 'a'
Attempting to unset 'c'
ဥပမာ
ကိုယ်ပိုင် ဂုဏ်သတ္တိများသို့ ဝင်ရောက်ခွင့်ကို ထိန်းချုပ်ရန် __unset ကို အသုံးပြုခြင်း။
<?php
class User {
private $email = 'user@example.com';
public function __unset($name) {
if ($name === 'email') {
throw new Exception("Cannot unset private property 'email'");
}
}
}
$user = new User();
unset($user->email);
?>
ကုဒ် လုပ်ဆောင်ချက်၏ ရလဒ်။
Exception: Cannot unset private property 'email'