php - 命名空间 - 到 'use' 或不到 'use' ?

标签 php namespaces

我最近一直在研究很多框架,特别是 Slim。现在,我不打算使用它,但无论如何有一个问题。在 Slim 中,它使用命名空间。但是,它实际上并没有“使用”它们中的任何一个。你会看到 namespace Slim;然后在主索引文件中它需要那个类,然后用它做东西。如果不使用,为什么要使用命名空间 use他们?
use的功能/行为是什么? ing 命名空间而不是仅仅放置 namespace xyz在开始编写代码之前?

最佳答案

把命名空间想象成盒子。

如果你声明:

namespace myBox;

以下代码将放入该框中。
class Test
{

   public function hello() {
      echo "Hello, world!\n";
   }

}

如果您想在应用程序的另一部分中使用该类,您将执行以下操作:
$test = new myBox\Test();

这相当于:
use myBox\Test;

$test = new Test();

命名空间只是帮助您设计应用程序和组织事物。在一个非常大的应用程序中,一个框架使用了很多技术,命名空间避免了两个类的名称相同。

关于php - 命名空间 - 到 'use' 或不到 'use' ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13733406/

相关文章:

c# - (约定)C# 类名

php - Freebase MID 数组并向 freebase 发送多个查询

php - 从 Laravel 中的对象数组中获取值

c# - 两个程序集中具有相同名称的类(有意)

django - 基于请求命名空间解析 URL

在 Laravel Controller 中找不到 PHP 类

php - 无法在 laravel 5.1 Eloquent 地获得 hasmany 表

php MySql 2列作为索引,1列作为另一个索引?

PHP 搜索账户

python - 了解命名空间文档