PHP 类:何时使用 :: vs. ->?
我知道有两种方法可以访问PHP类 - “::”和“->”。有时一个似乎对我有用,而另一个则不行,我不明白为什么。
每种方法有什么好处,使用两者的正确情况是什么?
我知道有两种方法可以访问PHP类 - “::”和“->”。有时一个似乎对我有用,而另一个则不行,我不明白为什么。
每种方法有什么好处,使用两者的正确情况是什么?
简单地说,是用于类级属性,并且用于对象级属性。::
->
如果该属性属于该类,请使用::
如果该属性属于该类的实例,请使用->
class Tester
{
public $foo;
const BLAH;
public static function bar(){}
}
$t = new Tester;
$t->foo;
Tester::bar();
Tester::BLAH;
“::” 符号用于访问已使用 static 关键字声明的对象的方法/属性,“->”用于访问表示实例方法/属性的对象的方法/属性。