在同一名称空间中扩展供应商库

时间:2019-03-14 14:56:57

标签: php oop namespaces composer-php

例如,我已经使用作曲家安装了ExampleLibrary。它具有一些驱动程序,它们位于ExampleLibrary\Driver名称空间下。

ExampleLibrary\Driver\FirstExampleLibrary\Driver\Second,它们正在扩展ExampleLibrary\DriverInterface

我想创建自己的驱动程序Third。如果可以将驱动程序放在供应商名称空间下可以吗?

我将使用命名空间src/ExampleLibrary/Driver/Third.php创建目录ExampleLibrary\Driver

1 个答案:

答案 0 :(得分:0)

您不应为自己的类使用供应商名称空间。这是违反直觉的(很难确定谁是此类的作者-名称空间不再指向供应商)并且容易出错(ExampleLibrary可能会在某个时刻添加ExampleLibrary\Driver\Third类)。它还可能会减慢自动加载的速度(如果您使用的是未经优化的自动加载器)。