Tìm hiểu từ khóa static trong PHP
Từ khóa tĩnh trong PHP (PHP Static Keyword)
Từ khóa static
trong PHP được sử dụng để khai báo các thuộc tính và phương thức tĩnh trong một lớp. Các thuộc tính và phương thức tĩnh có thể được truy cập mà không cần tạo một đối tượng của lớp đó.
Thuộc tính tĩnh (Static Properties)
Thuộc tính tĩnh là các biến được khai báo với từ khóa static
trong một lớp. Chúng có thể được truy cập trực tiếp thông qua tên lớp mà không cần tạo một đối tượng.
Cú pháp
class MyClass {
public static $staticProperty = "Hello, World!";
}
Truy cập thuộc tính tĩnh
echo MyClass::$staticProperty; // Output: Hello, World!
Phương thức tĩnh (Static Methods)
Phương thức tĩnh là các hàm được khai báo với từ khóa static
trong một lớp. Chúng có thể được gọi trực tiếp thông qua tên lớp mà không cần tạo một đối tượng.
Cú pháp
class MyClass {
public static function staticMethod() {
return "This is a static method.";
}
}
Gọi phương thức tĩnh
echo MyClass::staticMethod(); // Output: This is a static method.
Sử dụng từ khóa self
và static
Trong các phương thức tĩnh, bạn có thể sử dụng từ khóa self
để truy cập các thuộc tính và phương thức tĩnh của lớp hiện tại. Từ khóa static
được sử dụng để truy cập các thuộc tính và phương thức tĩnh trong ngữ cảnh của lớp con.
Ví dụ
class MyClass {
public static $staticProperty = "Hello, World!";
public static function staticMethod() {
return self::$staticProperty;
}
}
echo MyClass::staticMethod(); // Output: Hello, World!
Kế thừa và từ khóa tĩnh
Khi một lớp con kế thừa từ một lớp cha, nó có thể truy cập và ghi đè các thuộc tính và phương thức tĩnh của lớp cha.
Ví dụ
class ParentClass {
public static function staticMethod() {
return "Parent method";
}
}
class ChildClass extends ParentClass {
public static function staticMethod() {
return "Child method";
}
}
echo ParentClass::staticMethod(); // Output: Parent method
echo ChildClass::staticMethod(); // Output: Child method
Truy cập thuộc tính và phương thức tĩnh từ bên trong lớp
Bạn có thể truy cập các thuộc tính và phương thức tĩnh từ bên trong lớp bằng cách sử dụng từ khóa self
hoặc static
.
Ví dụ
class MyClass {
public static $staticProperty = "Hello, World!";
public static function staticMethod() {
return self::$staticProperty;
}
public function instanceMethod() {
return self::staticMethod();
}
}
$instance = new MyClass();
echo $instance->instanceMethod(); // Output: Hello, World!
Kết luận
Từ khóa static
trong PHP là một công cụ mạnh mẽ cho phép bạn khai báo các thuộc tính và phương thức tĩnh có thể được truy cập mà không cần tạo một đối tượng. Bằng cách hiểu và sử dụng từ khóa static
, bạn có thể viết mã PHP hiệu quả và linh hoạt hơn.