Я часто определяю SafeObject
для наследования, который умирает, когда я пытаюсь прочитать / записать неопределенный атрибут:
class SafeObject {
function __get($key) { die("Attempt to get nonexistent member $key"); }
function __set($key, $value) { die("Attempt to set nonexistent member $key"); }
}
Идея заключается в том, что я никогда не должен вызывать ни один из этих методов во время производствакод.