PHP静态函数

我对php中的静态功能有疑问。

假设我有一堂课

class test {

public function sayHi() {

echo 'hi';

}

}

如果我这样做的test::sayHi();话,没有问题。

class test {

public static function sayHi() {

echo 'hi';

}

}

test::sayHi(); 也可以。

头等舱和二等舱有什么区别?

静态函数有什么特别之处?

回答:

在第一个类中,sayHi()实际上是一个实例方法,您将其作为静态方法进行调用,但由于sayHi()从未引用,所以您将其取消$this

静态函数与该类相关联,而不是该类的实例。因此,$this在静态上下文中不可用($this未指向任何对象)。

以上是 PHP静态函数 的全部内容, 来源链接: utcz.com/qa/401944.html

回到顶部