我在现有项目中实现名称空间。我发现您可以使用关键字“ use”将类导入您的名称空间。我的问题是,我也可以将所有类从1个命名空间导入另一个。例:
namespace foo { class bar { public static $a = 'foobar'; } } namespace { use \foo; //This doesn't work! echo bar::$a; }
PHP 7+更新
PHP 7中的一项新功能是分组声明。这并不像在给定命名空间中的所有类上使用1个“ use语句”那样容易,但是却使它更容易…
示例代码:
<?php // Pre PHP 7 code use some\namespace\ClassA; use some\namespace\ClassB; use some\namespace\ClassC as C; // PHP 7+ code use some\namespace\{ClassA, ClassB, ClassC as C}; ?>
另请参阅:https : //secure.php.net/manual/en/migration70.new-features.php#migration70.new- features.group-use- declarations
这在PHP中是不可能的。
您所能做的就是:
namespace Foo; use Bar; $obj = new Bar\SomeClassFromBar();