使用与 Class 相同方法的特征,一个静态
Trait with same method as Class , one Static
trait TestTrait
{
public function matches()
{
}
}
class TestClassOne
{
public static function matches()
{
}
}
class TestClassTwo extends TestClassOne
{
use TestTrait {
matches as alternativeMatches;
}
public function run()
{
$this->alternativeMatches();
}
}
如上所示调用方法 运行 时会 return 错误:致命错误:无法使静态方法 匹配 非静态
classes 不是我写的,我在其他多个地方使用过的特征。如果我必须重写 trait .. 或者必须创建一个新的,只是为了让它与这个 class.
一起工作,那就太糟糕了
有没有办法让它工作?
干杯
好吧,我让它工作了一点……但我不喜欢它……
有人有更好的方法吗?
class TestClassTwo extends TestClassOne
{
use TestTrait {
matches as alternativeMatches;
}
public function run()
{
$this->alternativeMatches();
}
public static function matches()
{
parent::matches();
}
}
trait TestTrait
{
public function matches()
{
}
}
class TestClassOne
{
public static function matches()
{
}
}
class TestClassTwo extends TestClassOne
{
use TestTrait {
matches as alternativeMatches;
}
public function run()
{
$this->alternativeMatches();
}
}
如上所示调用方法 运行 时会 return 错误:致命错误:无法使静态方法 匹配 非静态
classes 不是我写的,我在其他多个地方使用过的特征。如果我必须重写 trait .. 或者必须创建一个新的,只是为了让它与这个 class.
一起工作,那就太糟糕了有没有办法让它工作?
干杯
好吧,我让它工作了一点……但我不喜欢它…… 有人有更好的方法吗?
class TestClassTwo extends TestClassOne
{
use TestTrait {
matches as alternativeMatches;
}
public function run()
{
$this->alternativeMatches();
}
public static function matches()
{
parent::matches();
}
}