Mbinu __isset
Mbinu __isset ni mbinu ya kichawi katika PHP na inaitwa wakati wa kujaribu kukagua uwepo wa sifa ya kitu kwa kutumia vitendakazi isset au empty, wakati sifa hiyo haipatikani au haipo. Mbinu hiyo inakubua parameta moja - jina la sifa inayokaguliwa.
Sintaksia
public function __isset(string $name): bool
Mfano
Tuunde darasa lenye mbinu ya kichawi __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));
?>
Matokeo ya kutekeleza kodi:
true
false
Mfano
Matumizi na sifa zenye nguvu za kinetic:
<?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));
?>
Matokeo ya kutekeleza kodi:
true
false