我想以类名和方法名都是变量的方式调用静态方法。
示例:
class QQQ {
public function www($x) {
echo $x;
}
}
$q = 'QQQ';
$w = 'www';
$q::$w(7); // this is what I am trying to do but it throws an error.
想法?
只需要更改
public function www($x) {
至
public static function www($x) {
因为,您通过作用域解析运算符::
调用它,所以它应该是静态的或者您应该更改调用它的方式
$test = new $q;
$test->$w(5);
应该可以工作,这取决于你试图用它做什么。