在同一名称空间的多个文件中导入相同的PHP类

时间:2015-10-18 19:49:26

标签: php namespaces

我希望Use位于Helper的同一个班级App\Helpers\Helper位于同一命名空间内的两个不同文件中。

例如:

A类:

<?php

namespace App\Services;

Use Helper;

class A {...}

B类:

<?php

namespace App\Services;

Use Helper;

class B {...}

但是,这是不允许的。错误是:

Cannot use App\Helpers\Helper as Helper because the name is already in use

我可以在第二个文件中重命名Helper类并说Use Helper as SomethingElse,但这似乎是一个混乱的解决方案,特别是如果我想在两个以上的类中使用这个Helper

有解决方法吗?

1 个答案:

答案 0 :(得分:0)

你很可能已经有一个包含该名称的类,可能的问题是你在另一个名称空间中有一个按该名称的类(并且已经包含了所述类)。您可以通过别名或使用类的完全限定名称来使用这两个类(来自具有相同名称的不同名称空间) 正确阅读this