Php 如何静态调用方法?
而不是初始化它Php 如何静态调用方法?,php,oop,methods,method-chaining,Php,Oop,Methods,Method Chaining,而不是初始化它 Video::block(); 不是这个 $video = new Video(); echo $video->block() Video::block();//只有这样changereturn$this->parsing()to返回self::parsing()更改返回$this->parsing()to返回self::parsing()由于您使用的是静态方法,因此不能使用$this关键字,因为该关键字只能在对象中使用,不能在类中使用 使用new关键字时,如果未使用新
Video::block();
不是这个
$video = new Video();
echo $video->block()
Video::block();//只有这样changereturn$this->parsing()
to返回self::parsing()
更改返回$this->parsing()
to返回self::parsing()
由于您使用的是静态方法,因此不能使用$this
关键字,因为该关键字只能在对象中使用,不能在类中使用
使用new
关键字时,如果未使用新关键字,则$this
将不可用,因为它不是对象
要使代码正常工作,静态代码必须使用static
keyowrd和范围解析操作符(:)
,因为您的方法在父类中,并且它没有边界,所以使用static
关键字调用父静态方法
例如:
Video::block(); // Only this way <<
由于您使用的是静态方法,因此不能使用$this
关键字,因为该关键字只能在对象中使用,不能在类中使用
使用new
关键字时,如果未使用新关键字,则$this
将不可用,因为它不是对象
要使代码正常工作,静态代码必须使用static
keyowrd和范围解析操作符(:)
,因为您的方法在父类中,并且它没有边界,所以使用static
关键字调用父静态方法
例如:
Video::block(); // Only this way <<
在相关说明中,阅读关于后期静态绑定的内容。如果可能,您应该避免使用静态方法。不能在静态上下文中使用$this。按照下面的建议使用self(相关)和可能的副本。在相关说明中,请阅读关于后期静态绑定的内容。如果可能,您应该避免使用静态方法。不能在静态上下文中使用$this。按照下面的建议使用self。(相关)并且可能重复的self::parsing()
将尝试调用不存在的Popular::parsing()
。如果使用PHP5.3.0(或更高版本),则应使用后期静态绑定,即static::parsing()
self::parsing()
将尝试调用不存在的Popular::parsing()
。如果使用PHP5.3.0(或更高版本),则应使用后期静态绑定,即static::parsing()
。
class Popular
{
public static function getVideo()
{
return static::parsing(); //Here
}
}