• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

PHP静态方法和属性

php 搞代码 3年前 (2022-01-23) 32次浏览 已收录 0个评论
class hw{	public static function hi()	{		return 'Hello World';	}}echo hw::hi();//Output:Hellp Worldclass hw2{	public functio2本文来源gaodaima#com搞(代@码$网6
搞gaodaima代码

n hi() { return 'Hello Wrold'; }}echo hw2::hi();//Output:Hellp World

从上例看出,使用了static和不适用static属性以后都可以直接使用::方法从外面直接调用。但是为了效率和其他方面因素,还是建议使用static来限制。

static类内部调用方法

class foo{    private static function c()    {        return 'abcde';    }    public static function a()    {        echo self::c();    }    public static function b()    {        echo $this->c();    }    public function  e()    {        echo self::c();    }}foo::a();//Output:abcdefoo::b();//Output:Fatal error: Using $this when not in object context infoo::e();//Output:abcef

使用了static关键字来限制的方法必须使用self::在本类内部引用。

static属性

class foo{	public static $a;	public static function a()	{		self::$a = 'abcd';	}}foo::a();//Output:abcdeecho foo::$a;

static继承与使用

class foo{	public static $a;	public static function a()	{		return 'abcde';	}}class soo extends foo{	public static function a()	{		echo '12345';	}}soo::a();//Output:12345

static的继承与普通类的继承方法一样,并没有太大区别。

class foo{	public static $a;	public static function a()	{		return 'abcde';	}}class soo extends foo{	public static function a()	{		echo parent::a();	}}soo::a();//Output:12345

只是使用的时候有写区别,必须是parent::方法来引用父类的方法,并且不能直接self::来使用的方法,不然不会有输出:

class foo{	public static $a;	public static function a()	{		return 'abcd';	}} class soo extends foo{	public static  function aa()	{		echo self::a();	}}soo::a();  

以上就介绍了PHP静态方法和属性,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:PHP静态方法和属性

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址