在PHP中,我什么时候使用:,什么时候使用->;


In PHP when do I use :: and when do I use ->

如果这对经验丰富的PHP用户来说很明显,我很抱歉,但我相信我在学习过程中错过了一个重要的环节。当使用对象时,我现在如何通过->调用函数或使用::调用它。目前我只使用了->方法,但是我遇到了使用::方法的代码。非常感谢您的任何见解或解释!

在调用静态方法或变量时,或者在调用父类时(如果当前类已扩展),可以使用::

当调用必须实例化类的方法或变量时,可以使用->

看看Classes和Objects self以及$this和Variable scope静态属性和变量。

http://php.net/manual/en/language.oop5.php

->用于对象方法和属性,因此当您创建类的对象时,需要使用->

$someObject = new someClass();
$someObject->someMethod();

::用于静态方法和的属性,这意味着您不需要创建对象即可使用它:

someClass::someMethod()