Вызов объекта как текст или функция
Вызов объекта как текст
Когда объект вызывается как строка, то PHP смотрит магический метод __toString()
.
class Test { function __toString() { return $this->data; } } $test = new Test(); echo $test; // выполнится метод __toString()
Вызов объекта как функция
Когда объект вызывается как функция, то PHP смотрит магический метод __invoke()
.
class Doubles { function __invoke($d) { return $d * 2; } } $double = new Doubles(); echo $double(2); // 4 echo $double(3); // 6 echo $double(4); // 8
Поддержать автора