__isset နည်းလမ်း

__isset နည်းလမ်းသည် PHP ရှိ မှော်ဆန်သောနည်းလမ်းတစ်ခုဖြစ်ပြီး အရာဝတ္ထုတစ်ခု၏ ဂုဏ်သတ္တိတစ်ခုရှိ/မရှိကို isset သို့မဟုတ် empty လုပ်ဆောင်ချက်များဖြင့် စစ်ဆေးရန် ကြိုးပမ်းသည့်အခါ၊ ထိုဂုဏ်သတ္တိသည် မရနိုင်သော သို့မဟုတ် မရှိသောအခါ ခေါ်ယူသည်။ ဤနည်းလမ်းသည် စစ်ဆေးမည့်ဂုဏ်သတ္တိ၏ အမည်ကို ပါရာမီတာတစ်ခုအဖြစ် လက်ခံသည်။

ဝါကျဖွဲ့စည်းပုံ

phppublic function __isset(string $name): bool

ဥပမာ

မှော်ဆန်သော __isset နည်းလမ်းပါရှိသော ကလက်စ်တစ်ခုကို ဖန်တီးကြပါစို့။

php<?php
class User {
  private $data = [
    'name' => 'John',
    'age' => 30
  ];
  
  public function __isset($name) {
    return isset($this->data[$name]);
  }
}

$user = new User();
var_dump(isset($user->name));
var_dump(isset($user->email));
?>

ကုဒ် ထုတ်လုပ်ဆောင်ချက်၏ ရလဒ်။

phptrue
false

ဥပမာ

ပြောင်းလဲနိုင်သော ဂုဏ်သတ္တိများနှင့် အသုံးပြုခြင်း။

php<?php
class DynamicProperties {
  private $storage = [];
  
  public function __isset($name) {
    return array_key_exists($name, $this->storage);
  }
  
  public function __set($name, $value) {
    $this->storage[$name] = $value;
  }
}

$obj = new DynamicProperties();
$obj->test = 'value';
var_dump(isset($obj->test));
var_dump(isset($obj->unknown));
?>

ကုဒ် ထုတ်လုပ်ဆောင်ချက်၏ ရလဒ်။

phptrue
false

ဤအကြောင်းကိုလည်း ကြည့်ပါ

  • __get နည်းလမ်း,
    မရနိုင်သော ဂုဏ်သတ္တိများကို ဖတ်သည့်အခါ ခေါ်ယူသည်
  • __set နည်းလမ်း,
    မရနိုင်သော ဂုဏ်သတ္တိများထဲသို့ ရေးသားသည့်အခါ ခေါ်ယူသည်
  • __unset နည်းလမ်း,
    မရနိုင်သော ဂုဏ်သတ္တိများကို ဖျက်သည့်အခါ ခေါ်ယူသည်