Hằng số trong class
Hằng số trong class được định nghĩa với từ khóa const
và không có dấu $
trước tên hằng. Có thể truy cập hằng số qua class hoặc qua object sử dụng toán tử ::
Hằng số mặc định đặt ở chế độ public. Từ phiên bản PHP 7.1 có thể khai báo với từ khóa public, protected hoặc private.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
<?php
class MyClass {
const CONSTANT = 'giá trị hằng số';
function showConstant() {
echo $this::CONSTANT . "\n";
}
}
echo MyClass::CONSTANT; // -> giá trị hằng số
$object = new MyClass();
$object::CONSTANT; // -> giá trị hằng số
$object->showConstant(); -> // -> giá trị hằng số\n
|
Autoload
Sử dụng hàm spl_autoload_register
để gọi tự động chạy các câu lệnh cần thiết khi tạo class/interface mới trong trường hợp class/interface đó chưa được khai báo.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
<?php
// file MyClass1.php
class MyClass1 {};
// file MyClass2.php
class MyClass2 {};
// file test.php
spl_autoload_register(function($class_name) {
echo $class_name . " được load\n";
include $class_name . '.php';
});
$obj = new MyClass1();
$obj2 = new MyClass2();
|