命名空间的真正含义

时间:2013-08-13 12:06:41

标签: php namespaces

我已经阅读过关于命名空间的内容,我刚才和他们玩了一些。但我想确保我做对了。

1)因此,命名空间可以从名称的重复中保存,当您将外部源添加到应用程序中时非常好

2)使用名称空间是一种好习惯,以避免重复

3)使用类似文件夹结构的命名空间是一个好习惯,例如,如果我有像这样调用我的命名空间的Folder / Folder1 / Fileone.php:namespace Zend / Folder1 / Fileone;

我只是想确保我做到了这一点,并且命名空间基本上是为了保持有条理并且很好地使用它们。

1 个答案:

答案 0 :(得分:2)

  1. 确切地说,命名空间确保声明相同类的两个库/代码库/项目之间没有冲突。在一个应用程序中,它甚至可以用于分隔不同的类,这些类在逻辑上可以被赋予相同的名称;说View\UserModel\User

    您可以通过命名类class View_User等获得相同的好处,但这意味着总是必须使用该名称的类。看看像Zend Framework 1.0这样的大型项目,看看这导致了多么冗长的混乱。使用名称空间,您可以在同一名称空间和别名类中使用较短的名称来轻松地缩写名称。

  2. 是的,最好使用ProjectName\...甚至VendorName\ProjectName\...命名所有代码,以确保避免与第三方代码发生冲突。

  3. 是的,如果您将文件夹名称与类名(包括名称空间)相关联,则可以轻松使用自动加载器。它也很有道理。