首页 > 编程笔记 > PHP笔记 阅读:1

PHP static静态属性和静态方法(附带实例)

在 PHP 中,如果想让类中的某个成员只保存一份,并且可以通过类直接访问,则可以将这个成员定义为静态成员。

PHP 的静态成员包括静态属性和静态方法。静态成员使用 static 关键字修饰。定义静态成员的语法格式如下:
public static $属性名;          // 定义静态属性
public static 方法名() {}       // 定义静态方法
在上述语法格式中,在属性名和方法名前面添加 static 关键字,表示静态成员。

在类外访问静态成员时,不需要创建对象,直接通过类名访问即可,具体语法格式如下:
类名::$属性名;                  // 访问静态属性
类名::方法名();                 // 访问静态方法(调用静态方法)

在类中可以使用 self 或 static 关键字配合“::”访问静态成员,self 和 static 关键字在类的内部代替类名,当类名发生变化时,不需要修改类的内部代码。在类内访问静态成员的语法格式如下:
self::$属性名;                  // 使用self访问静态属性
self::方法名();                 // 使用self访问静态方法(调用静态方法)
static::$属性名;                // 使用static访问静态属性
static::方法名();               // 使用static访问静态方法(调用静态方法)

为了能够让读者更好地理解静态成员的使用方法,下面演示静态成员的定义和访问,具体代码如下:
class Student
{
    public static $age = '18';
    public static function show()
    {
        echo self::$age;   // 在类内使用self关键字访问静态属性
        echo static::$age; // 在类内使用static关键字访问静态属性
    }
}
echo Student::$age;   // 在类外访问静态属性
Student::show();    // 在类外访问静态方法
在上述代码中:

PHP “::”和“->”访问类成员时的区别

在使用“::”和“->”访问类成员时,需要注意如下内容:

相关文章