If we look at the getEmail() method, we can see that it has no side-effect.
Whether you call this method or not, no future calls to other methods are affected
by this. As such code as the following is useless:

$user=newUser();$user->getEmail();// This line could safely be removed as it has no effect.

On the hand, if we look at the setEmail(), this method _has_ side-effects.
In the following case, we could not remove the method call:

$user=newUser();$user->setEmail('[email protected]');// This line has a side-effect (it changes an// instance variable).