PHP - Các loại hằng số
Hằng số là tên hoặc mã định danh cho một giá trị đơn giản. Giá trị không đổi không thể thay đổi trong quá trình thực thi tập lệnh. Theo mặc định, một hằng số có phân biệt chữ hoa chữ thường. Theo quy ước, các định danh hằng luôn là chữ hoa. Tên hằng bắt đầu bằng một chữ cái hoặc dấu gạch dưới, theo sau là bất kỳ số chữ cái, số hoặc dấu gạch dưới nào. Nếu bạn đã xác định một hằng số, nó không bao giờ có thể bị thay đổi hoặc không được xác định.
Để xác định một hằng số, bạn phải sử dụng hàm define () và để truy xuất giá trị của một hằng số, bạn chỉ cần chỉ định tên của nó. Không giống như với các biến, bạn không cần phải có một hằng số với $. Bạn cũng có thể sử dụng hàm hằng () để đọc giá trị của một hằng nếu bạn muốn lấy tên của hằng đó một cách linh hoạt.
hàm hằng ()
Như được chỉ ra bởi tên, hàm này sẽ trả về giá trị của hằng số.
Điều này hữu ích khi bạn muốn truy xuất giá trị của một hằng số, nhưng bạn không biết tên của nó, tức là Nó được lưu trữ trong một biến hoặc được trả về bởi một hàm.
ví dụ hằng ()
<?php
define("MINSIZE", 50);
echo MINSIZE;
echo constant("MINSIZE"); // same thing as the previous line
?>
Chỉ dữ liệu vô hướng (boolean, số nguyên, float và chuỗi) mới có thể được chứa trong hằng số.
Sự khác biệt giữa hằng và biến là
Không cần phải viết dấu đô la ($) trước một hằng số, trong đó như trong Biến, người ta phải viết dấu đô la.
Các hằng số không thể được định nghĩa bằng phép gán đơn giản, chúng chỉ có thể được xác định bằng cách sử dụng hàm define ().
Các hằng số có thể được định nghĩa và truy cập ở bất cứ đâu mà không cần quan tâm đến các quy tắc xác định phạm vi thay đổi.
Sau khi các Hằng số đã được thiết lập, có thể không được xác định lại hoặc không được xác định.
Tên hằng hợp lệ và không hợp lệ
// Valid constant names
define("ONE", "first thing");
define("TWO2", "second thing");
define("THREE_3", "third thing");
define("__THREE__", "third value");
// Invalid constant names
define("2TWO", "second thing");
Hằng số ma thuật PHP
PHP cung cấp một số lượng lớn các hằng số được xác định trước cho bất kỳ tập lệnh nào mà nó chạy.
Có năm hằng số ma thuật thay đổi tùy thuộc vào nơi chúng được sử dụng. Ví dụ: giá trị của __LINE__ phụ thuộc vào dòng mà nó được sử dụng trong tập lệnh của bạn. Các hằng số đặc biệt này không phân biệt chữ hoa chữ thường và như sau:
Dưới đây là một vài hằng số PHP "kỳ diệu":
Sr.No | Tên & Mô tả |
---|---|
1 | __LINE__ Số dòng hiện tại của tệp. |
2 | __FILE__ Đường dẫn đầy đủ và tên tệp của tệp. Nếu được sử dụng bên trong bao gồm, tên của tệp được bao gồm sẽ được trả về. Kể từ PHP 4.0.2,__FILE__ luôn chứa một đường dẫn tuyệt đối trong khi trong các phiên bản cũ hơn, nó chứa đường dẫn tương đối trong một số trường hợp. |
3 | __FUNCTION__ Tên chức năng. (Được thêm trong PHP 4.3.0) Kể từ PHP 5, hằng số này trả về tên hàm như đã được khai báo (phân biệt chữ hoa chữ thường). Trong PHP 4, giá trị của nó luôn là chữ thường. |
4 | __CLASS__ Tên lớp. (Được thêm vào trong PHP 4.3.0) Kể từ PHP 5, hằng số này trả về tên lớp như đã được khai báo (phân biệt chữ hoa chữ thường). Trong PHP 4, giá trị của nó luôn là chữ thường. |
5 | __METHOD__ Tên phương thức lớp. (Được thêm vào trong PHP 5.0.0) Tên phương thức được trả về như được khai báo (phân biệt chữ hoa chữ thường). |