Можно ли использовать несуществующие свойства объектов?

Насколько вижу (хотя в уроках это то ли не упоминалось, то ли было мною упущено), при попытке установить значение несуществующего свойства какого-либо объекта, PHP преспокойно молчит, и это значение даже можно потом из объекта прочитать. То есть поведение совершенно такое же, как будто это свойство было в классе объявлено, и оно публичное.
Хотя, по логике, при таких действиях хорошо было бы выдать хотя бы предупреждение.
Так что вопрос - нормально ли такое поведение PHP? Это следование какому-то принципу ООП, или это наоборот "упрощение для домохозяек"? Можно ли использовать установку и чтение несуществующих свойств, или лучше специально сделать __set (а то и __get), в котором выбрасывать исключение при попытке доступа к несуществующему свойству?
Что в данном случае считается сегодня хорошей практикой?
  • Вопрос задан
  • 211 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы