您当前的位置:首页 > 攻略教程 > 软件教程 > phpstatic

phpstatic

来源:互联网 |  时间:2024-10-21 00:55:37

本文操作环境:windows7系统、PHP7.1版,DELL G3电脑php static是什么意思?PHP中static关键字的作用和区别PHP中的static与Java等其他面向对象语言不同,实例化出来的一个对象只可以对静态方法进行访问

phpstatic

本文操作环境:windows7系统、PHP7.1版,DELL G3电脑

php static是什么意思?

PHP中static关键字的作用和区别

PHP中的static与Java等其他面向对象语言不同,实例化出来的一个对象只可以对静态方法进行访问,对静态成员无法访问。

使用static关键字即表示该成员为静态成员,在类的加载过程中只会保留一个副本,所有对静态变量进行的操作都会对所有对象起作用

在PHP中静态变量不能被实例化对象调用,静态方法可以被对象调用

// ----类内部----// 调用普通成员this->name;// 调用静态成员self::name_static;// ----类外部----// 调用普通成员需要实例化使用Car c = new Car();c->name;// 调用静态方法c::fun()  <==>  Car::fun()// 调用静态变量Car::name;
登录后复制

分析一段代码:

class Car{    private $name;    private static $type = "Car";    function __construct($name)    {        $this->name = $name;        echo "Car " . $name . " has created!\n";    }    public static function getType()    {        echo self::$type . "\n";    }    public function getName()    {        echo "Car name is " . $this->name . "\n";    }    function __destruct()    {        echo "Car " . $this->name . " has destory!";    }}
登录后复制

一个实体类,定义了一个构造函数,一个静态函数,一个普通函数,一个析构函数和一个普通成员变量、一个静态成员变量。

使用PHPunit进行测试

class  test extends PHPUnit_Framework_TestCase{    public function test_car()    {        $car = new Car("BMW");        $car::getType();        $car->getName();    }}
登录后复制

可以得到输出:

Car BMW has created!CarCar name is BMWCar BMW has destory!
登录后复制

【推荐学习:PHP视频教程】

关于我们 | 联系我们 | 免责声明 | 网站地图

黔ICP备2025048344号-1

本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件给ponybericher@163.com