如何将PHP类作为参数传递给生成器函数



我实现了一个对象生成器,它采用类名并尝试创建一个新的实例对象。如果需要,构建器会尝试注入服务。类名在当前实现中作为字符串传递。以下是的示例

$className = 'ExampleApplicationServiceClass';
$service = CiContext::newInstance($className);

但是,这与我的IDE(eclipse(不兼容,重构过程也找不到类名(字符串形式(。

有没有办法像java那样获取类名?

Class classInstance = ServerClass.class;

在这种情况下,重构过程会找到类引用并更改类名。

类名支持PHP7类常量。例如,以下代码在PHP 7.4中是正确的:

$service = CiContext::newInstance(ExampleApplicationServiceClass::class);

这将解决我的问题,IDE将查找类的用法。

另一方面,类文字也将支持对象。有关更多信息,请参阅对象上的类文字

最新更新