李涛自留地
回到顶部
首页 > php学习 > PHP static静态变量方法如何使用 PHP static静态变量方法实例代码

PHP static静态变量方法如何使用 PHP static静态变量方法实例代码

文章目录

在之前学习了PHP的类中如何使用public、protected、private来实现对类数据的隐藏,那么在类中我们还可以设置类的成员属性为静态变量和静态方法,那么在PHP中static静态变量、静态方法如何使用呢?下面本文将对PHP中类的静态变量、静态方法的使用进行记载。

PHP类中如何定义静态变量和方法

PHP类中定义静态变量和方法和定义公共成员变量、私有成员变量及受保护的成员变量的方法是一样的,不一样的是定义静态变量和方法的时候,我们需要使用static关键字来定义。

PHP中如何调用类中的静态变量和方法

在《PHP中$this和::的如何使用?PHP中$this和::是什么意思?》一文中,当时记载的有::作用域符号的使用,我们如果要调用静态变量和方法就需要使用到::作用域符号。self::变量名:就是调用的类本身内的静态变量;self::方法名():就是调用的类本身的成员方法。当然我们还可以使用parent::来实现子类调用父类的静态成员变量,下面我们来看看在PHP的子类中如何调用父类的静态变量。

PHP子类如何调用父类的静态变量

在上面我们提到了在子类中使用parent::来实现调用父类中的静态变量,确实是可以调用出来,但是只能放在子类的成员方法当中使用。如果我们直接在子类中使用echo输出,或者是将父类的静态变量赋值给一个变量,在我们使用的编辑中就会直接报错,如下图所示我使用if…else和isset()函数对parent::静态变量名进行判断直接报错了,直接提示syntax error语法错误。

PHP static静态变量方法如何使用 PHP static静态变量方法实例代码

PHP类中static静态变量、方法实例代码

<?php
//定义类myclass
class myclass{
    //定义一个webname静态变量;
    static $webname = '李涛自留地';
    //定义一个weburl静态变量;
    static $weburl = 'www.leetao.cc';
    //定义一个my_info的静态方法;
    static function my_info(){
        echo '我的网站名称是:'.self::$webname.'<br>';
        echo '我的网站域名是:'.self::$weburl;
    }
}

class test_myclass extends myclass{
    function test_static (){
        echo parent::$webname;
    }
}
//输出静态变量webname;
echo myclass::$webname;
echo '<hr>';
//输出静态方法my_info
echo myclass::my_info();
//实例化子类test_myclass
$test = new test_myclass;
echo '<hr>';
echo '以下输出的是子类中调用父类的静态变量:<br>';
echo $test->test_static();
?>
PHP static静态变量方法如何使用 PHP static静态变量方法实例代码

通过以上从PHP类中如何定义静态变量和方法、PHP中如何调用类中的静态变量和方法、PHP子类如何调用父类的静态变量及PHP类中static静态变量、方法实例代码这四大方面的记载,基本上明白了如何定义类的静态变量及如何调用。后面笔者将继续记载更多关于PHP面向对象的学习笔记。

若非作者标注皆为李涛自留地原创文章,转载或复制请以超链接形式并注明出处。