PHP: 覆盖特征静态方法
PHP: Override trait static method
我有一个特征,它有一个静态方法,我想重写并再次调用它...
我试过这个:
trait MyTrait{
static function myMethod(){ echo "Hi from my trait".PHP_EOL; }
}
class MyClass{
use MyTrait {
myMethod as myMethodTrait;
}
static function myMethod(){
self::myMethodTrait();
echo "Hi from my class";
}
}
MyClass::myMethodTrait();
我有这个错误:
Fatal error: Could not find trait 0 in (...)
哪里出错了?
谢谢...
我刚刚尝试了这段代码,它可以正常工作。
MyClass::myMethodTrait(); // returns Hi from my trait
和
MyClass::myMethod(); // returns Hi from my trait Hi from my class
严格按照提供的代码来看,没有错误。也许您可以添加更多信息?
我有一个特征,它有一个静态方法,我想重写并再次调用它... 我试过这个:
trait MyTrait{
static function myMethod(){ echo "Hi from my trait".PHP_EOL; }
}
class MyClass{
use MyTrait {
myMethod as myMethodTrait;
}
static function myMethod(){
self::myMethodTrait();
echo "Hi from my class";
}
}
MyClass::myMethodTrait();
我有这个错误:
Fatal error: Could not find trait 0 in (...)
哪里出错了?
谢谢...
我刚刚尝试了这段代码,它可以正常工作。
MyClass::myMethodTrait(); // returns Hi from my trait
和
MyClass::myMethod(); // returns Hi from my trait Hi from my class
严格按照提供的代码来看,没有错误。也许您可以添加更多信息?