Web Cơ Bản

Cách khai báo, sử dụng thuộc tính tĩnh trong PHP

Thuộc tính tĩnh (static property) là gì ?

- Đối với lập trình hướng đối tượng trong PHP, “thuộc tính tĩnh” là loại thuộc tính có thể được gọi trực tiếp mà không cần phải tạo một đối tượng từ lớp chứa thuộc tính đó.

- Trong một lớp, thuộc tính tĩnh được khai báo bởi từ khóa static.

<?php
	class ClassName{
		public static $staticProperty = "webcoban.vn";
	}
?>

- Khi muốn truy cập một thuộc tính tĩnh thì chúng ta sử dụng tên lớp, theo sau là cặp dấu hai chấm :: và tên thuộc tính tĩnh.

ClassName::staticProperty;

- Thuộc tính $value trong lớp Pi là một thuộc tính tĩnh.

- Ở câu lệnh cuối, các bạn thấy tôi gọi đến thuộc tính $value mà không cần phải tạo một đối tượng từ lớp Pi.

<?php
	class Pi{
		public static $value = 3.14159;
	}
	echo Pi::$value;
?>

Tìm hiểu thêm về thuộc tính 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 lớp bằng cách sử dụng từ khóa self và dấu hai chấm ::

<?php
	class Pi{
		public static $value = 3.14159;
		public function staticValue(){
			return self::$value;
		}
	}
	$pi = new Pi();
	echo $pi->staticValue();
?>

- Để truy cập một thuộc tính tĩnh từ lớp con, các bạn hãy sử dụng tử khóa parent bên trong lớp con.

<?php
	class pi{
		public static $value=3.14159;
	}
	class x extends pi{
		public function xStatic(){
			return parent::$value;
		}
	}
	echo x::$value;
	echo "<br>";
	$x = new x();
	echo $x->xStatic();
?>