Articles of getter

& __ get () снова. Основное разочарование

Хорошо, я очень расстроен, потому что я думал, что я решил эту проблему, или успешно это сделал раньше. Быстрое предварительное: PHP 5.3.6. Сообщение об ошибках сработало до 11. ( -1 самом деле, в будущем безопасно, все ошибки / уведомления ) У меня есть класс, он агрегирует параметры запроса. Для хихиканья здесь урезанная версия: class My_Request{ […]

Почему я должен использовать __get () и __set () – магические методы в php?

Возможный дубликат: Когда do / следует использовать __construct (), __get (), __set () и __call () в PHP? Это одна из областей, в которой я не нашел хорошего ответа. Может ли кто-нибудь объяснить мне, почему / как правильно их использовать? Разве это не плохое дизайнерское решение?

PHP __get __set методы

class Dog { protected $bark = 'woof!'; public function __get($key) { if (isset($this->$key)) { return $this->$key; } } public function __set($key, $val) { if (isset($this->$key)) { $this->$key = $val; } } } В чем смысл использования этих функций. если я могу использовать $dog = new Dog(); $dog->bark = 'woofy'; echo $dog->bark; Почему я должен был […]

PHP: пустой не работает с методом getter

У меня есть метод «getter», например function getStuff($stuff){ return 'something'; } если я проверил его с empty($this->stuff) , я всегда получаю FALSE , но я знаю, что $this->stuff возвращает данные, потому что он работает с echo. и если я проверю его с помощью !isset($this->stuff) я получаю правильное значение, и условие никогда не выполняется … вот […]

Автоматический сеттер php и getter

Я пытаюсь реализовать некоторые автоматические getter и setter для php-объектов. Моя цель состоит в том, чтобы автоматически использовать для каждого свойства методы getProperty() и setProperty(value) , таким образом, если метод не реализован для свойства, скрипт просто установит или получит значение. Например, чтобы я убедился: class Foo { public $Bar; } $A = new A(); $A->setBar("bar"); […]

Magic __get getter для статических свойств в PHP

public static function __get($value) не работает, и даже если это так, так получилось, что мне уже нужен магический __get getter, например, свойства в том же классе. Вероятно, это вопрос «да» или «нет», так что это возможно?