首页 行业资讯 宠物日常 宠物养护 宠物健康 宠物故事

php 类名::方法

发布网友 发布时间:2022-04-22 09:20

我来回答

4个回答

热心网友 时间:2022-04-06 00:51

::是静态访问方式,只和类本身相关而和类对象没有关系,所以直接调用是类名::方法名
因为PHP语言本身就是一个不够严谨的语言(或者换句话说,比较灵活),所以当一个方法只要是public(像楼主那样的缺省的也为public类型)并且该方法中没有使用代表对象的$this就可以使用::来调用,php在解析的时候会自动将其以静态方法解析调用。当然在PHP5以后,就引入了static public function func(){}这种方式声明,所以如果在PHP5上,并且报错机制是比较全的话,直接调用一个没有static声明的方法的时候,就会提示一个notic了···

热心网友 时间:2022-04-06 02:09

类::方法 ,是对类的静态属性和方法的直接引用,不需要实例化类而直接使用。

在访问PHP类中的成员变量或方法时,如果被引用的变量或者方法被声明成const(定义常量)或者static(声明静态),那么就必须使用操作符::,反之如果被引用的变量或者方法没有被声明成const或者static,那么就必须使用操作符->。

热心网友 时间:2022-04-06 03:43

:: 是 不需要对象, 可以使用类名 来 直接调用 方法的。

如果 方法里 调用了 该对象的方法或属性 (使用了$this)
那么就不能使用::来 调用这个方法了。

你上面写的代码里的fun() 其实 应该设定为 静态方法。

热心网友 时间:2022-04-06 05:35

静态方法不需要实例类(也就是不用new)就可以调用,定义静态方法用static public function 方法名(){}的方式定义,调用方法 类名::静态方法名

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com