当静态 class 方法可调用时,将参数传递给它的适当方法是什么?
What's the appropriate way of passing arguments to the static class method when it's made callable?
我尝试了以下代码:
<?php
class A {
public static function who($simba) {
echo "A\n";
echo $simba;
}
}
class B extends A {
public static function who() {
echo "B\n";
}
}
call_user_func(array('B', 'parent::who'), $nangal="huip");
?>
输出:
Warning: Declaration of B::who() should be compatible with A::who($simba)
A huip
为什么我会收到此警告?我想删除它。所以,请指导我。
覆盖PHP中的方法时,覆盖方法签名应与父相同方法兼容!这意味着您应该在扩展 class!
中声明一个 public static function who($simba)
我尝试了以下代码:
<?php
class A {
public static function who($simba) {
echo "A\n";
echo $simba;
}
}
class B extends A {
public static function who() {
echo "B\n";
}
}
call_user_func(array('B', 'parent::who'), $nangal="huip");
?>
输出:
Warning: Declaration of B::who() should be compatible with A::who($simba)
A huip
为什么我会收到此警告?我想删除它。所以,请指导我。
覆盖PHP中的方法时,覆盖方法签名应与父相同方法兼容!这意味着您应该在扩展 class!
中声明一个public static function who($simba)