我正在使用 PHP 5.2
我有以下代码:
class MyClass {
public function __construct() {}
public static function stuff() {
echo 'This is static! <br />';
}
}
$myClass = new MyClass();
MyClass::stuff(); // Reference by class.
$myClass->stuff(); // Reference by instance of class.
输出在这两种情况下都有效,这是输出:
这是静态的!
这是静态的!
使用第二种引用方式与第一种引用方式有问题吗?
由于我不允许使用与上述静态函数具有相同签名的非静态函数,因此这不是问题。我希望函数是静态的,因为使用静态函数时也有速度提升。
我是否遗漏了什么,或者这里唯一的问题是关于 -> 取消引用语法如何不表明这是一个静态函数的语义?