为什么使用命名空间,随着项目的文件增多,就不可避免的出现类名,函数名,常量名重复的现象,本文主要和大家分享php命名空间简介,希望能帮助到大家。
未定义命名空间的如下图
Fatal error: Cannot redeclare class test in E:\PHP\PHPTutorial\WWW\demo\namespace\b.php on line 2
定义三个文件
a.php
namespace a\b;
class test{ public function show(){ echo 'this is a'; }}
b.php
<?phpnamespace c\d;class test{ public function show(){ echo 'this is b'; }}
index.php require './a.php'; require './b.php';
$a = new a\b\test();实例化类时记得把命名空间给加上
由于每次在实例化类的时候比较繁琐,于是可以采用第二种的写法
<?phpuse \a\b as w;require './a.php';require './b.php';$a = new w\test();$a->show();
1.空间的整体导入需要取别名,如果没有取别名,默认以最后一个\后面的字符作为空间名称
namespace 后面的代码都属于当前的空间,namespace之外的代码都属于全局的空间
如何在当前空间使用全局空间呢,只需要在需要的成员后面加上\ 反斜线,表示全局的空间。
相关推荐:
Atas ialah kandungan terperinci php命名空间简介. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!