Junior — Middle
Имате ли искуства у коришћењу посебних метода које почињу са двоструким подваљком у PHP?
sobes.tech АИ
Одговор од АИ
U PHP-u, specijalne metode koje počinju sa duplim donjim crtom (__) nazivaju se magijske metode. One omogućavaju prepravljanje ponašanja objekata u određenim situacijama. Na primer:
__construct()— konstruktor klase__destruct()— destruktor__get($name)— poziva se pri pristupu nepostojećoj ili nedostupnoj svojstvu__set($name, $value)— poziva se pri dodeljivanju nepostojećoj ili nedostupnoj svojstvu__call($name, $arguments)— poziva se pri pozivu nepostojeće metode__toString()— definiše ponašanje objekta pri pretvaranju u niz
Primer korišćenja __get i __set:
class User {
private $data = [];
public function __get($name) {
return $this->data[$name] ?? null;
}
public function __set($name, $value) {
$this->data[$name] = $value;
}
}
$user = new User();
$user->name = 'Иван';
echo $user->name; // Ispisaće 'Иван'
Magijske metode omogućavaju fleksibilno upravljanje ponašanjem objekata i često se koriste za implementaciju obrazaca dizajna ili za pojednostavljenje interfejsa klasa.