<code>php</code><code><br><?php namespace MyProject \ Sub \ Level ; const CONNECT_OK = 1 ; class Connection { /* ... */ } function connect () { /* ... */ } ?> </code>
这个命名空间等同于\MyProject \ Sub \ Level么?
就是MyProject这个命名空间默认在全局命名空间下?
<code>php</code><code><br><?php namespace MyProject \ Sub \ Level ; const CONNECT_OK = 1 ; class Connection { /* ... */ } function connect () { /* ... */ } ?> </code>
这个命名空间等同于\MyProject \ Sub \ Level么?
就是MyProject这个命名空间默认在全局命名空间下?
你理解的很对。
参见http://www.chinaz.com/program/2010/0309/108172.shtml的详细讲解。
关于命名空间的问题最好还是自己尝试写一些代码,验证你的猜想。这样理解会深很多,记忆也会加强。
你的理解是对的。如果你没有声明命名空间,默认就是在'\'即全局命名空间(PHP内置函数,类等,除特别声明都是在这个命名空间)。你可以通过 echo __NAMESPACE__
.得到验证