Couldn't I write: isset(static::$structure) ?
You could, but that's only runtime. People generally prefer compile-time control which is derived from definition rather than per-instance runtime control (implementing interface vs. checking each time if class has certain methods).
So this will be my very last (and so much naïve) question: do you know how
people cope with it in other OO languages?
AFAIK there are not many languages which allow you to do non-static static calls... I see no way of doing it in Java or C++ - please correct me if I'm wrong.
--
Stanislav Malyshev, Zend Software Architect
stas@zend.com http://www.zend.com/
(408)253-8829 MSN: stas@zend.com