Does extending a class include the namespace of the extended class?
To answer the question in the title: no, extending a class does not inherit the namespace of the extended class. 

Your class namespace must be declared for each class or your class will be placed in the global namespace. 

A little bit more on namespaces since if you don't declare one your code will be placed in the global namespace. Since PHP 5.3 if you don't declare a namespace then the class will belong to the global namespace. From the manual here:


  Without any namespace definition, all class and function definitions are placed into the global space - as it was in PHP before namespaces were supported. Prefixing a name with \ will specify that the name is required from the global space even in the context of the namespace.


As this applies to you, if you don't put a class in a namespace it will simply belong to the global namespace thus it wouldn't clash with a class with the same name in another namespace. 

In general, functions without a class won't interfere with functions with the same name in a class. The reason being is that you need a class object to call a function declared inside a class.