2010-02-09 35 views

回答

5

要澄清关于不同的语法使用的任何混乱,命名空间仅支持两种语法,无论是括号简单组合既会工作。我建议如果你使用另一个,保持一致。

<?php 
namespace my\stuff\nested { // <- bracketed syntax 
class foo {} 
} 
?> 

它创建一个类foonested命名空间内与括号语法{}),它相当于

<?php 
namespace my\stuff { // bracketed syntax but with a nested look 
    namespace nested { 
    class foo {} 
    } 
} 
?> 

您还可以使用嵌套的命名空间与简单组合语法;

<?php 
namespace mine; 
use ultra\long\ns\name; // <- simple-combination syntax 

$a = name\CONSTANT; 
name\func(); 
?> 

PHP: FAQ: things you need to know about namespaces

+0

看起来命名空间不是必需的'{}'? – user198729 2010-02-09 15:21:53

+0

不,不是必须的。它展示了如何在命名空间内创建一个类,因此'{}' – 2010-02-09 15:22:20

+0

因此'use'的唯一功能是简写? – user198729 2010-02-09 15:29:01