PHP OOP - Thuộc tính tĩnh
PHP - Thuộc tính tĩnh
Các thuộc tính static có thể được gọi trực tiếp - mà không cần tạo một thể hiện của một lớp.
Thuộc tính static được khai báo với static
từ khóa:
Cú pháp
<?php
class ClassName {
public static $staticProp = "W3Schools";
}
?>
Để truy cập thuộc tính tĩnh, hãy sử dụng tên lớp, dấu hai chấm (: :) và tên thuộc tính:
Cú pháp
ClassName::$staticProp;
Hãy xem một ví dụ:
Thí dụ
<?php
class
pi {
public static $value = 3.14159;
}
// Get static property
echo pi::$value;
?>
Giải thích ví dụ
Ở đây, chúng tôi khai báo một thuộc tính static: $ value. Sau đó, chúng tôi lặp lại giá trị của thuộc tính static bằng cách sử dụng tên lớp, dấu hai chấm (: :) và tên thuộc tính (mà không cần tạo lớp trước).
PHP - Thông tin thêm về Thuộc tính tĩnh
Một lớp có thể có cả thuộc tính tĩnh và không tĩnh. Một thuộc tính tĩnh có thể được truy cập từ một phương thức trong cùng một lớp bằng cách sử dụng self
từ khóa và dấu hai chấm (: :):
Thí dụ
<?php
class
pi {
public static $value=3.14159;
public function
staticValue() {
return self::$value;
}
}
$pi = new pi();
echo $pi->staticValue();
?>
Để gọi một thuộc tính tĩnh từ một lớp con, hãy sử dụng parent
từ khóa bên trong lớp con:
Thí dụ
<?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();
?>