__isset মেথড
__isset মেথডটি PHP-তে একটি ম্যাজিক মেথড এবং এটি কল হয় যখন isset বা empty ফাংশন ব্যবহার করে একটি অবজেক্টের প্রপার্টির অস্তিত্ব পরীক্ষা করার চেষ্টা করা হয়, এবং সেই প্রপার্টিটি অনুপলব্ধ বা অস্তিত্বহীন থাকে। মেথডটি একটি প্যারামিটার নেয় - পরীক্ষা করা প্রপার্টির নাম।
সিনট্যাক্স
public function __isset(string $name): bool
উদাহরণ
একটি ক্লাস তৈরি করা যাক যাতে ম্যাজিক মেথড __isset রয়েছে:
<?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));
?>
কোড 실행ের ফলাফল:
true
false
উদাহরণ
ডায়নামিক প্রপার্টির সাথে ব্যবহার:
<?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));
?>
কোড 실행ের ফলাফল:
true
false