命名空间一个最明确的目的就是解决重名问题。Php中不允许两个函数或者类出现相同的名字,否则会产生一个致命的错误。这种情况下只要避免命名重复就可以解决,最常见的一种做法是约定一个前缀。另一个解决方法是可以考虑使用命名空间。
命名空间将代码划分出不同放入空间(区域),每个空间的常量、函数、类的名字互不影响。
创建一个命名空间需要使用 namespace关键词
<?php
//创建一个名字为, SpaceName 的命令空间
namespace SpaceName;
?>
在不同空间之间不可以直接调用其他元素,需要使用命名空间的语法
<?php
namespace SpaceName1;
class testSpace{
function prin(){
print 'SpaceName1';
}
}
namespace SpaceName2;
class testSpace{
function prin(){
print 'SpaceName2';
}
}
$c = new testSpace();
$c->prin();
$c2 = new \SpaceName1\testSpace();
$c2->prin();
?>