Biến siêu toàn cục trong PHP (PHP Super Globals)
Biến siêu toàn cục (Super Globals) trong PHP là các biến tích hợp sẵn có phạm vi toàn cục, có thể truy cập từ bất kỳ đâu trong mã nguồn của bạn. Các biến này cung cấp một cách tiện lợi để truy cập dữ liệu từ các nguồn khác nhau như biểu mẫu, URL, cookie, và phiên.
Các biến siêu toàn cục phổ biến
$_GET
Biến $_GET
được sử dụng để thu thập dữ liệu từ các tham số URL. Dữ liệu được gửi qua phương thức GET.
Ví dụ
// URL: http://example.com/index.php?name=John&age=25
$name = $_GET['name'];
$age = $_GET['age'];
echo "Name: $name, Age: $age"; // Output: Name: John, Age: 25
$_POST
Biến $_POST
được sử dụng để thu thập dữ liệu từ các biểu mẫu HTML. Dữ liệu được gửi qua phương thức POST.
Ví dụ
// HTML Form
/*
<form method="post" action="index.php">
Name: <input type="text" name="name">
Age: <input type="text" name="age">
<input type="submit">
</form>
*/
// PHP
$name = $_POST['name'];
$age = $_POST['age'];
echo "Name: $name, Age: $age";
$_REQUEST
Biến $_REQUEST
được sử dụng để thu thập dữ liệu từ cả phương thức GET và POST.
Ví dụ
$name = $_REQUEST['name'];
$age = $_REQUEST['age'];
echo "Name: $name, Age: $age";
$_SERVER
Biến $_SERVER
chứa thông tin về máy chủ và môi trường thực thi. Nó cung cấp nhiều thông tin hữu ích như tiêu đề, đường dẫn, và vị trí tập lệnh.
Ví dụ
echo $_SERVER['PHP_SELF']; // Tên tập lệnh hiện tại
echo $_SERVER['SERVER_NAME']; // Tên máy chủ
echo $_SERVER['HTTP_HOST']; // Tiêu đề Host
echo $_SERVER['HTTP_USER_AGENT']; // Thông tin User-Agent
echo $_SERVER['SCRIPT_NAME']; // Đường dẫn tập lệnh hiện tại
$_FILES
Biến $_FILES
được sử dụng để thu thập dữ liệu từ các tệp được tải lên thông qua biểu mẫu HTML.
Ví dụ
// HTML Form
/*
<form method="post" action="upload.php" enctype="multipart/form-data">
Select file: <input type="file" name="fileToUpload">
<input type="submit" value="Upload File">
</form>
*/
// PHP
$file = $_FILES['fileToUpload'];
echo "File name: " . $file['name'];
echo "File type: " . $file['type'];
echo "File size: " . $file['size'];
$_COOKIE
Biến $_COOKIE
được sử dụng để thu thập dữ liệu từ các cookie.
Ví dụ
// Thiết lập cookie
setcookie("user", "John", time() + 3600); // Cookie tồn tại trong 1 giờ
// Truy cập cookie
echo $_COOKIE['user']; // Output: John
$_SESSION
Biến $_SESSION
được sử dụng để thu thập dữ liệu từ các phiên (session).
Ví dụ
// Bắt đầu phiên
session_start();
// Thiết lập biến phiên
$_SESSION['user'] = "John";
// Truy cập biến phiên
echo $_SESSION['user']; // Output: John
$_ENV
Biến $_ENV
được sử dụng để thu thập dữ liệu từ các biến môi trường.
Ví dụ
echo $_ENV['PATH']; // Output: Đường dẫn hệ thống
Kết luận
Biến siêu toàn cục trong PHP cung cấp một cách tiện lợi để truy cập dữ liệu từ nhiều nguồn khác nhau. Bằng cách hiểu và sử dụng các biến siêu toàn cục như $_GET
, $_POST
, $_REQUEST
, $_SERVER
, $_FILES
, $_COOKIE
, $_SESSION
, và $_ENV
, bạn có thể viết mã PHP linh hoạt và mạnh mẽ hơn.