当静态 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)