在 PHP 中通过字符串类名设置类型提示[关闭]

问题描述 投票:0回答:1

我有一个带有我的类名的变量

$var = Foo::class;

如何在主类的类型提示中使用这个变量? 这里的类型提示对我来说是必要的,我不能用接口代替类

class Main {
    // use type in variable $var
    private Foo $one;
}

尝试过一些方法,但没有成功

php
1个回答
0
投票

在 PHP 中,您可以使用称为“变量类名”或“类名解析”的功能来使用变量进行类型提示。 但此功能仅在以后的版本中可用。

class Main {
    private $one;
    public function __construct(string $var) {
        $this->one = new $var();
    }
}
$var = Foo::class;
$main = new Main($var);
© www.soinside.com 2019 - 2024. All rights reserved.