Hướng dẫn dùng php superglobals trong PHP

Superglobals là những biến được xây dựng sẵn trong PHP (built-in variables). Những biến này có thể được truy cập và sử dụng ở bất cứ phạm vi (scope) nào. Trong PHP, có những biến superglobals là:

    • $GLOBALS
    • $_SERVER
    • $_REQUEST
    • $_POST
    • $_GET
    • $_FILES
    • $_ENV
    • $_COOKIE
    • $_SESSION

Trong bài này, chúng ta sẽ tìm hiểu cách sử dụng các superglobals trong PHP. Để học tốt bài này, các bạn cần đọc lại bài Cài đặt môi trường lập trình Web PHP với XAMPP để biết cách chạy ứng dụng web PHP với XAMPP.

1. Biến $GLOBALS trong PHP

PHP lưu trữ các biến global trong một mảng (array) là $GLOBALS['name']. Trong đó, name là tên của biến global.


2. Biến $_SERVER trong PHP

Biến $_SERVER là một mảng (array), giúp lưu trữ các thông tin máy chủ và môi trường thực thi. Những thông tin này có thể là tiêu đề (headers), đường dẫn (paths) và vị trí file PHP (script locations).

";
echo $_SERVER['SERVER_NAME'];
echo "
"; echo $_SERVER['HTTP_HOST']; echo "
"; echo $_SERVER['HTTP_USER_AGENT']; echo "
"; echo $_SERVER['SCRIPT_NAME']; ?>

Các bạn có thể xem thêm các thông tin mà biến $_SERVER lưu trữ tại $_SERVER variable.

3. Biến $_REQUEST trong PHP

Biến $ _REQUEST được sử dụng để thu thập dữ liệu sau khi được gửi đi từ HTML form.



Name: Age:
"; } if (empty($age)) { echo "Age is empty"; } else { echo $age; } } ?>

4. Biến $_POST trong PHP

Biến $ _POST được sử dụng để thu thập dữ liệu của HTML form sau khi được gửi đi từ HTML form với method = “post”.




Name: Age:
"; } if (empty($age)) { echo "Age is empty"; } else { echo $age; } } ?>

5. Biến $_GET trong PHP

Biến $ _ GET được sử dụng để thu thập dữ liệu của HTML form sau khi được gửi đi từ HTML form với method = “get”.




Name: Age:
"; } if (empty($age)) { echo "Age is empty"; } else { echo $age; } } ?>

Sau khi submit với method = “get” thì chúng ta được URL có dạng http://localhost/gochocit/index.php?fname=23&fage=John.

6. Biến $_ENV trong PHP

Biến $_ENV trong PHP là một mảng kết hợp (associative array), giúp lưu trữ các biến môi trường (environment variables) của file PHP hiện tại. Lưu ý: Biến $_ENV đôi khi là một mảng không có giá trị nào.

PHP có hỗ trợ hàm getenv() để truy xuất danh sách tất cả các biến môi trường trên máy chủ. Đoạn code bên dưới giúp xuất ra tất cả biến môi trường được lấy từ hàm getenv().

$val)
echo "$key=>$val"."
"; // get value of environment variable PATH echo "Path: " . getenv("PATH"); ?>

Chúng ta cũng có thể sử dụng hàm putenv() để tạo ra một biến môi trường mới.


Bài này đã trình bày cách sử dụng một số superglobals phổ biến trong PHP. Các superglobals khác như $_FILES, $_COOKIE, $_SESSION sẽ được giới thiệu ở những bài sau của series môn học Lập trình Web PHP.

  • Mối liên hệ giữa cấu trúc dữ liệu và giải thuật
  • Khai báo và sử dụng con trỏ đối tượng trong C++
  • Namespace trong PHP dùng để làm gì?
  • Kiểm tra (validation) dữ liệu trong html form với PHP
  • Các chỉ định truy cập (access modifier) trong PHP