【发布时间】:2020-08-16 18:49:11
【问题描述】:
我有一个特征,想输入提示 $this 来告知编译器它的类型:
trait MyTrait {
public function myAwesomeFunction() {
return new OtherClass($this); // warning: Expected MyAwesomeInterface, got MyTrait
}
}
class OtherClass {
public function __construct(MyAwesomeInterface $foo) { ... }
}
所以我想知道是否有类似的东西,例如:
trait MyTrait {
public function myAwesomeFunction() {
/**
* @var $this MyAwesomeInterface
*/
return new OtherClass($this); // no warnings
}
}
这将允许我通知编译器该特征的用户实现了我的接口。
请注意,特征不能在 PHP 中实现接口(请参阅Why PHP Trait can't implement interfaces?)。
感谢您的帮助 ;-)
【问题讨论】:
标签: php type-hinting phpdoc