__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 मेथड,
    जो अनुपलब्ध प्रॉपर्टीज़ को हटाने पर कॉल होता है