PHP类属性、类常量简介

属性

类的变量成员叫做“属性”,或者叫“字段”、“特征”。属性声明是由关键字public、protected或private开头,然后跟一个普通的变量声明来组成。属性中的变量可以初始化,但是初始化的值必须是常数,常数是指PHP脚本在编译阶段时就可以得到其值,而不依赖于运行时的信息才能求值。 为了向后兼容PHP4、PHP5声明属性依然可以直接使用关键字var来替代public、protected和private。在PHP5.0到5.1.3,var会被认为是废弃的,并产生E_STRICT警告,但是5.1.3 之后就不再认为是废弃,也不会产生警告。使用var会默认为public。

在类的成员方法中,可以通过伪变量($this)和对象运算符(->)来访问非静态变量,静态属性可以通过范围解析操作符(::)来访问,self::property或$this::property。

PHP5.3起,如果heredoc中不包含变量或其他复杂格式,则可以用来初始化静态变量和类中的属性、常量。PHP5.3引入的nowdoc也可以用于初始化静态变量和类中的属性、常量。

var.self::$v.$this::$v3;
    }
}
$a=new A();
$a->displayVar();
?>

常量

将在类中始终保持不变的值称为类常量,在定义常量时不需要使用$,而是在常量名前使用const关键字。常量的值必须是一个定值,不能是变量,类属性,数学运算的结果或函数调用。接口中也可以定义常量。PHP5.3起可以通过变量来动态调用类。变量的值不能为关键字,如self、parent、static等。

范围解析操作符(::)来访问,self::property或$this::property。

displayVar();
echo A::cons."\n";
$className="A";
echo $className::cons."\n";
?>

 

你可能感兴趣的:(PHP)