PHP 中的 -> 和 :: 的区别

PHP 中的 -> 和 :: 的区别

->

类中 用于引用类实例的方法和属性

例如:

class Test{
    function add(){return $this->var++;}
    var $var = 0;
}
$a = new Test;  //  实例化对象名称
echo $a->add();
echo $a->var;

::

类中 静态方法和静态属性的引用方法

例如:

class Test{
    public static function test(){
    public static $test = 1;
   }
}

类的静态方法和静态属性可以不用实例化对象直接使用(使用的方式是 类名::静态方法名 )

Test::test();  //  调用静态方法test
Test::$test;  //  来取得$test静态属性的值

注:

静态方法在读到这个类或者引入这个类文件的时候,就已经实例化并存放到内存中了,非静态类则需要new一下。

静态类在内存中即使有多个实例,静态的属性也只有一份。

以上就是PHP 中的 -> 和 :: 的区别的详细内容,更多请关注求知技术网其它相关文章!

发表评论

电子邮件地址不会被公开。 必填项已用*标注