PHP:扩展类是否需要另一个“使用"来调用命名空间?
I'm wondering whether in the situation where I'm extending a class that has already 'use' keyword above it to use specific namespace - do I need to add another 'use' above the inheriting class to use the same namespace? Situation like this:
namespace Core;
use SystemPlugin;
class Front extends Application { }
and now in the Controller, which is called directly without the namespace (using full path):
use SystemPlugin;
class PageController extends Front { }
or would it work without 'use' as well and allow me to use the SystemPlugin namespace:
class PageController extends Front { }
?
解决方案No, you need the "use" statement in both files. Use is a file-level keyword and isn't affected by inheritance.
See the scoping rules for importing and the little box describing what I said at the bottom of the manual page.
相关文章