First of all, thank you to everybody who has responded to my (silly)
questions; you have made this subject a lot more understandable. :)

static:: seems weird because it implies otherkeyword:: is not static.


I think the point that was made from the other posters was that child:: was
way too confusing because it implied something that just goes way beyond the
scope of what the PHP can and cannot do. Without any other  reasonable
alternative to the keyword, I have to agree that static:: is the best
candidate for the job. As for parent/self:: and even static::, what makes
them static is the scope resolution operator (::), not their name. Their
name just implies the context in which they are to be used.

Anyways, I don't think there is a perfect solution that everybody would just
love. It appears that this is a very difficult subject.

Perhaps we should forget about the whole keyword and just allow objects
to access its static members like any other member? It works like that
for static functions too. Why not let it act that way for static
variables?:


I would have to disagree with you on this subject. The whole point of having
a static model is the ability to access members of classes without having to
instantiate them. ClassName::classMember is completely different than
$className->classMember. Using the former means that you do not necessarily
have an instantiated object of ClassName, but in the latter it is implied
that you do. I would think that using $this::classMember in the wrong place
could lead to some very troubling errors at run-time.

--
It looked like something resembling white marble, which was
probably what it was: something resembling white marble.
               -- Douglas Adams, "The Hitchhikers Guide to the Galaxy"

Reply via email to