PHP从5.3开始支持命名空间,一般很少使用。
由于在同一个文件中使用相同的类,会出现错误,特别是,第三方的代码融入到自己的代码中,有时候会出现类冲突的现象。
可以在同一个文件中定义多个命名空间。实际的编程实践中不提倡一个文件多个类,所以这里也不提倡在同一个文件中定义多个命名空间比如:有两个类,可以在两个文件中也可以在一个文件中,这里就偷懒一下使用一个文件【不提倡哦】(namespace.php)
<?php
namespace zhl;
class Test
{
public function index() {
echo 'use name space'.__NAMESPACE__;
}
public function doST() {
echo 'Hello, everyone , I am testing namespace for php>= 5.3, the namepsace name is '.__NAMESPACE__;
}
}
namespace bieru;
class Test
{
public function index() {
echo 'use name space'.__NAMESPACE__;
}
public function doST() {
echo 'Hello, everyone , I am testing namespace for php>= 5.3, the namespace name is '.__NAMESPACE__;
}
}
$zhlTest = new \zhl\Test();
$zhlTest -> index();
echo "<hr>";
$bieruTest = new \bieru\Test();
$bieruTest -> index();
?>
子命名空间,与目录和文件的关系很象,PHP 命名空间也允许指定层次化的命名空间的名称。