Ho ripassato e ti posso dire...no non da alcun errore di compilazione...se $name è dichiarata protected posso accedervi anche nelle sottoclassi di MyClass...

Nell'esempio in questione fuori da entrambe le classi viene invocato: echo $obj->getName();
che a sua volta invoca il metodo pubblico della sottoclasse che può restituire il valore della variabile $name perchè questa è protected quindi accessibbile nella sottoclasse...se invece è dichiarata private non può accedervi...

Cmq grazie
Andrea