One thing you should keep in mind is the difference between static (or "class") methods and instance (or "object") methods.
Object methods (and properties) belong to each object instantiated from the class - each object has its own copy of these ($this->foo, $this->bar(), etc.).
Class methods belong to the class as a whole, and not to the objects. These are the ones you refer to as someclass::foo(). They typically make up a library of functions that create objects of that class (so-called factory methods) or act on groups of objects from that class. A Set class might have a static method "Set::union(Set $a, Set $b)" for example. This is neither a method of $a nor a method of $b, but a method of the Set class itself. Methods that do stuff to objects, rather than methds that objects do stuff with, in other words.
Having a class method call $this->something() doesn't really make a lot of sense, therefore, because the class itelf doesn't have any of those methods, only its objects do.