PHP OOP – 静态属性
PHP - 静态属性
可以直接调用静态属性 - 无需创建类的实例。
使用 static
关键字声明静态属性:
语法
<?php
class ClassName {
public static $staticProp = "BEGTUT";
}
?>
class ClassName {
public static $staticProp = "BEGTUT";
}
?>
要访问静态属性,请使用类名、双冒号 (::) 和属性名:
语法
ClassName::staticProp;
我们来看一个例子:
实例
<?php
class pi {
public static $value = 3.14159;
}
// Get static property
echo pi::$value;
?>
亲自试一试 »
class pi {
public static $value = 3.14159;
}
// Get static property
echo pi::$value;
?>
实例解析
在这里,我们声明一个静态属性:$value。 然后,我们通过使用类名、双冒号 (::) 和属性名(无需先创建类)来回显静态属性的值。
PHP - 更多静态属性
一个类可以同时具有静态和非静态属性。 可以使用 self
关键字和双冒号 (::) 从同一类中的方法访问静态属性:
实例
<?php
class pi {
public static $value=3.14159;
public function staticValue() {
return self::$value;
}
}
$pi = new pi();
echo $pi->staticValue();
?>
亲自试一试 »
class pi {
public static $value=3.14159;
public function staticValue() {
return self::$value;
}
}
$pi = new pi();
echo $pi->staticValue();
?>
要从子类调用静态属性,请在子类中使用 parent
关键字:
实例
<?php
class pi {
public static $value=3.14159;
}
class x extends pi {
public function xStatic() {
return parent::$value;
}
}
// Get value of static property directly via child class
echo x::$value;
// or get value of static property via xStatic() method
$x = new x();
echo $x->xStatic();
?>
亲自试一试 »
class pi {
public static $value=3.14159;
}
class x extends pi {
public function xStatic() {
return parent::$value;
}
}
// Get value of static property directly via child class
echo x::$value;
// or get value of static property via xStatic() method
$x = new x();
echo $x->xStatic();
?>