Welcome to geeksforgeeks1 để xác định hằng số lớp. Sử dụng các từ khóa công cụ sửa đổi khả năng hiển thị, bao gồm công khai, được bảo vệ và riêng tư. Theo mặc định, hằng số lớp là công khai. chúng ta đã học được nhiều khái niệm cơ bản về khái niệm Constant trong PHP. Hy vọng bạn đã thích điều này. Cảm ơn bạn
Từ khóa const được sử dụng để khai báo một hằng lớp. Một hằng số là không thể thay đổi một khi nó được khai báo. Lớp hằng được khai báo bên trong định nghĩa lớp. Hằng số lớp phân biệt chữ hoa chữ thường. Tuy nhiên, nên đặt tên hằng bằng chữ in hoa. Hằng số khác với các biến thông thường vì không sử dụng $ [ký hiệu đô la]. Khả năng hiển thị mặc định của hằng số lớp là công khai. Hằng lớp rất hữu ích khi bạn cần khai báo một số dữ liệu không đổi [không thay đổi] trong một lớp
Có hai cách để truy cập hằng số lớp
- Bên Ngoài Lớp Học. Hằng số lớp được truy cập bằng cách sử dụng tên lớp theo sau là toán tử phân giải phạm vi [. ] theo sau là tên hằng
Ví dụ
PHP
Welcome to geeksforgeeks2
Welcome to geeksforgeeks3
Welcome to geeksforgeeks4
Welcome to geeksforgeeks5
Welcome to geeksforgeeks3
Welcome to geeksforgeeks7____28
Welcome to geeksforgeeks7
Welcome to geeksforgeeks0
Welcome to geeksforgeeks1
Welcome to geeksforgeeks2
Welcome to geeksforgeeks3
Welcome to geeksforgeeks4
Welcome to geeksforgeeks3
Welcome to geeksforgeeks6
Welcome to geeksforgeeks7
Welcome to geeksforgeeks8
Welcome to geeksforgeeks9
đầu ra
Welcome to geeksforgeeks
2. Bên Trong Lớp Học. Nó có thể được truy cập bằng cách sử dụng từ khóa self theo sau bởi toán tử phân giải phạm vi [. ] theo sau là tên hằng
Hằng số lớp phân biệt chữ hoa chữ thường. Tuy nhiên, nên đặt tên hằng bằng chữ in hoa
Chúng ta có thể truy cập một hằng từ bên ngoài lớp bằng cách sử dụng tên lớp theo sau là toán tử phân giải phạm vi [
Welcome to geeksforgeeks1] theo sau là tên hằng, như ở đây
Ví dụ
class Goodbye {
const LEAVING_MESSAGE = "Cảm ơn bạn đã ghé thăm W3Schools. com. ";
}
echo Tạm biệt. LEAVING_MESSAGE;
?>
Hoặc, chúng ta có thể truy cập một hằng số từ bên trong lớp bằng cách sử dụng từ khóa
Welcome to geeksforgeeks2, sau đó là toán tử phân giải phạm vi [
Welcome to geeksforgeeks1], sau đó là tên hằng số, như ở đây
Hằng số là một mã định danh [tên] cho một giá trị đơn giản. Giá trị không thể thay đổi trong tập lệnh
Tên hằng hợp lệ bắt đầu bằng một chữ cái hoặc dấu gạch dưới [không có dấu $ trước tên hằng]
Ghi chú. Không giống như các biến, các hằng tự động toàn cầu trên toàn bộ tập lệnh
Tạo một hằng số PHP
Để tạo một hằng số, hãy sử dụng hàm
Welcome to geeksforgeeks4
cú pháp
xác định [tên, giá trị, phân biệt chữ hoa chữ thường]
Thông số
- Tên. Chỉ định tên của hằng số
- giá trị. Chỉ định giá trị của hằng số
- trường hợp không nhạy cảm. Chỉ định xem tên hằng có phân biệt chữ hoa chữ thường hay không. Mặc định là sai
Ví dụ
Tạo một hằng số với tên phân biệt chữ hoa chữ thường
define["CHÀO MỪNG", "Chào mừng đến với W3Schools. com. "];
echo CHÀO;
?>
Ví dụ
Tạo một hằng với tên không phân biệt chữ hoa chữ thường
define["CHÀO MỪNG", "Chào mừng đến với W3Schools. com. ", true];
echo lời chào;
?>
Mảng hằng PHP
Trong PHP7, bạn có thể tạo hằng Array bằng hàm
Welcome to geeksforgeeks4
Ví dụ
Tạo một hằng số Array
define["ô tô", [
"Alfa Romeo",
"BMW",
"Toyota
]];
echo cars[0];
?>
Hằng số là Toàn cầu
Các hằng số tự động toàn cầu và có thể được sử dụng trên toàn bộ tập lệnh
Ví dụ
Ví dụ này sử dụng một hằng số bên trong một hàm, ngay cả khi nó được định nghĩa bên ngoài hàm
define["CHÀO MỪNG", "Chào mừng đến với W3Schools. com. "];
function myTest[] {
echo GREETING;
}
myTest[];
?>
Có cách nào để tôi có thể buộc một lớp con định nghĩa một hằng số [mà tôi cần sử dụng trong một trong các phương thức bên trong của lớp trừu tượng] không?
Giải pháp tốt nhất
Đây có thể là một chút 'hack', nhưng thực hiện công việc với rất ít nỗ lực, nhưng chỉ với một thông báo lỗi khác nếu hằng số không được khai báo trong lớp con
Một khai báo hằng tự tham chiếu là đúng về mặt cú pháp và phân tích cú pháp mà không gặp vấn đề gì, chỉ gây ra lỗi nếu khai báo đó thực sự được thực thi trong thời gian chạy, do đó, một khai báo tự tham chiếu trong lớp trừu tượng phải được ghi đè trong một lớp con, nếu không sẽ có lỗi nghiêm trọng.
Welcome to geeksforgeeks6
Trong ví dụ này, trừu tượng, lớp cha
Welcome to geeksforgeeks7 buộc tất cả các con của nó phải khai báo biến
Welcome to geeksforgeeks8. Mã này chạy tốt, xuất ra
Welcome to geeksforgeeks9. Tuy nhiên, nếu lớp con
Welcome to geeksforgeeks00 không khai báo biến, lỗi nghiêm trọng sẽ xảy ra
Welcome to geeksforgeeks1
Giải pháp liên quan
Javascript – Có hằng số trong JavaScript không
Kể từ ES2015, JavaScript có khái niệm về
Welcome to geeksforgeeks0
Điều này sẽ làm việc trong. Một số cũng có thể cần bật chế độ nghiêm ngặt
Bạn có thể sử dụng
Welcome to geeksforgeeks02 với các quy ước như ALL_CAPS để chỉ ra rằng không nên sửa đổi một số giá trị nhất định nếu bạn cần hỗ trợ các trình duyệt cũ hơn hoặc đang làm việc với mã kế thừa
Welcome to geeksforgeeks4
Php – Bảng liệt kê trên PHP
Tùy thuộc vào trường hợp sử dụng, tôi thường sử dụng một cái gì đó đơn giản như sau
Welcome to geeksforgeeks5
Tuy nhiên, các trường hợp sử dụng khác có thể yêu cầu xác thực nhiều hơn các hằng số và giá trị. Dựa trên các nhận xét bên dưới về sự phản ánh và một vài ghi chú khác, đây là một ví dụ mở rộng có thể phục vụ tốt hơn cho nhiều trường hợp hơn
Welcome to geeksforgeeks6
Bằng cách tạo một lớp enum đơn giản mở rộng BasicEnum, giờ đây bạn có khả năng sử dụng các phương thức để xác thực đầu vào đơn giản
Welcome to geeksforgeeks7
Như một lưu ý phụ, bất cứ khi nào tôi sử dụng sự phản chiếu ít nhất một lần trên lớp tĩnh/const nơi dữ liệu sẽ không thay đổi [chẳng hạn như trong một enum], tôi lưu trữ kết quả của các cuộc gọi phản chiếu đó, vì mỗi lần sử dụng các đối tượng phản chiếu mới
Bây giờ hầu hết mọi người cuối cùng đã nâng cấp lên ít nhất 5. 3 và có sẵn
Welcome to geeksforgeeks03, đó chắc chắn cũng là một lựa chọn khả thi--miễn là bạn không bận tâm đến khái niệm truyền thống không trực quan về việc có các khởi tạo enum thực tế trong toàn bộ cơ sở mã của bạn. Trong ví dụ trên,
Welcome to geeksforgeeks04 và
Welcome to geeksforgeeks05 hoàn toàn không thể được khởi tạo, và chúng cũng không nên