Có thể xác định các hằng số trên cơ sở mỗi lớp vẫn giữ nguyên và không thể thay đổi. Tầm nhìn mặc định của hằng số lớp là public
.
Ghi chú::
Hằng số lớp có thể được xác định lại bởi một lớp trẻ em. Kể từ Php 8.1.0, các hằng số lớp không thể được xác định lại bởi một lớp con nếu nó được xác định là cuối cùng.
Nó cũng có thể cho các giao diện có constants
. Nhìn vào tài liệu giao diện cho các ví dụ.
Có thể tham chiếu lớp bằng một biến. Giá trị của biến không thể là một từ khóa [ví dụ: self
, parent
và static
].
Lưu ý rằng các hằng số lớp được phân bổ một lần cho mỗi lớp và không phải cho mỗi trường hợp lớp.
Ví dụ số 1 xác định và sử dụng hằng số
Hằng số ____99 đặc biệt cho phép độ phân giải tên lớp đủ điều kiện tại thời điểm biên dịch, điều này rất hữu ích cho các lớp theo tên:::class
constant allows for fully qualified class name resolution at compile time, this is useful for namespaced classes:
Ví dụ #2 theo tên :: Ví dụ về lớp
public
0
public
1
public
2Ví dụ #3 Ví dụ biểu thức không đổi lớp
public
3
Ví dụ #4 Các bộ sửa đổi khả năng hiển thị không đổi lớp, kể từ Php 7.1.0
public
4
Đầu ra của ví dụ trên trong Php 7.1:
bar Fatal error: Uncaught Error: Cannot access private const Foo::BAZ in …
Ghi chú::
Kể từ các sửa đổi khả năng hiển thị Php 7.1.0 được phép cho các hằng số lớp.
tmp dot 4 dot longoria tại gmail dot com ¶ ¶
11 năm trước
public
5
public
6
public
7ẩn danh ¶ ¶
12 năm trước
public
8
public
9
constants
0
constants
1
constants
2
constants
3
constants
4
constants
5
constants
6
constants
7
constants
8
constants
9Kuzawinski Dot Marcin tại Gmail Dot Com ¶ ¶
8 năm trước
self
0
self
1
constants
9Xóa chấm chấm và chấm chấm này dot gt tại kani dot hu ¶ ¶
8 năm trước
self
3
self
4
self
5Xóa chấm chấm và chấm chấm này dot gt tại kani dot hu ¶ ¶
8 năm trước
self
6
self
7
self
8
self
9Xóa chấm chấm và chấm chấm này dot gt tại kani dot hu ¶ ¶
Xiong Chiamiov ¶
parent
0
parent
1
parent
2
parent
3Trưởng Jimmmy Dot tại Gmail Dot Com ¶ ¶
Xiong Chiamiov ¶
parent
4
parent
5
parent
6
constants
9Trưởng Jimmmy Dot tại Gmail Dot Com ¶ ¶
6 năm trước
parent
8
parent
9
static
0
static
1
static
2Nepomuk tại Nepda Dot de ¶ ¶
WBCarts tại Juno Dot Com ¶
static
3
14 năm trước ¶
Paul ¶
static
4
static
5
static
6
static
7
constants
97 năm trước ¶
Nimja ¶
static
9
0
constants
9Kuzawinski Dot Marcin tại Gmail Dot Com ¶ ¶
Nimja ¶
echo echoshowConstant[] {
2
echo self::CONSTANT . "\n";
}
}
echo $classname::CONSTANT . "\n";$class = new MyClass[];
$class->showConstant[];
?>
echo echoshowConstant[] {
3
echo self::CONSTANT . "\n";
}
}
echo $classname::CONSTANT . "\n";$class = new MyClass[];
$class->showConstant[];
?>
public
6
showConstant[] {
echo self::CONSTANT . "\n";
}
}echo
MyClass::CONSTANT . "\n";$classname = "MyClass";
echo $classname::CONSTANT . "\n";$class = new MyClass[];
$class->showConstant[];echo
$class::CONSTANT."\n";
?>
55 năm trước ¶
Nimja ¶
echo echoshowConstant[] {
6
echo self::CONSTANT . "\n";
}
}
echo $classname::CONSTANT . "\n";$class = new MyClass[];
$class->showConstant[];
?>
echo echoshowConstant[] {
7
echo self::CONSTANT . "\n";
}
}
echo $classname::CONSTANT . "\n";$class = new MyClass[];
$class->showConstant[];
?>
echo echoshowConstant[] {
8
echo self::CONSTANT . "\n";
}
}
echo $classname::CONSTANT . "\n";$class = new MyClass[];
$class->showConstant[];
?>
constants
9