Các biến toàn cục có sẵn trong PHP
Trong PHP có những biến cục bộ dạng mảng được định nghĩa trước. Các biến này bạn có thể truy cập ở bất kỳ đâu.
Trong bài viết này, tôi sẽ chia sẻ các biến sau: $_SERVER
, $GLOBALS
, $_REQUEST
, $_POST
, $_GET
, $_FILES
, $_COOKIE
, $_SESSION
Biến $_SERVER
$_SERVER
là một mảng chứa các thông tin do Server sinh ra như Header, Path, Location Script. Một số thông tin bạn có thể lấy được qua biến này như:
$_SERVER['HTTP_HOST']
: Trả về Host của trang (Có thể hiểu là tên miền của trang)$_SERVER['DOCUMENT_ROOT']
: Trả về Path của trang (Ví dụ: /Applications/AMPPS/www)$_SERVER['QUERY_STRING']
: Lấy chuỗi truy vấn trên URL (Ví dụ: ?username=hoangan)$_SERVER['REQUEST_URI']
: Trả về URI của trang (Ví dụ: /phpbasic/mang.php)$_SERVER['HTTP_REFERER']
: Trả về URL trước khi truy cập tới trang hiện tại (Thường được dùng để thống kê nguồn truy cập)$_SERVER['SCRIPT_NAME']
: Trả về đường dẫn của file PHP hiện tại$_SERVER['REQUEST_METHOD']
: Trả về phương thức gửi Request đến Server (POST, GET, PUT,…)$_SERVER['REQUEST_TIME']
: Trả về timestamp lúc gửi yêu cầu đến Server$_SERVER['HTTP_USER_AGENT']
: Trả về User-Agent là header của yêu cầu gửi đến, qua cái này có thể biết được thông tin như Trình duyệt, Hệ điều hành, Thiết bị … đang truy cập$_SERVER['REMOTE_ADDR']
: Trả về IP đang truy cập
Biến $GLOBALS
$GLOBALS
là một mảng chứa tất cả các tham chiếu đến các biến toàn cục (global). Với key của mảng là tên biến.
function test() { $bien_kt = "Biến cục bộ"; echo '$bien_kt toàn cục có giá trị là: ' . $GLOBALS["bien_kt"] . "<br>"; echo '$bien_kt cục bộ trong hàm có giá trị là: ' . $bien_kt . "<br>"; } $bien_kt = "Biến toàn cục"; test(); //Kết quả //$bien_kt toàn cục có giá trị là: Biến toàn cục //$bien_kt toàn cục có giá trị là: Biến cục bộ
Biến $_REQUEST
Biến này là một mảng kết hợp, lưu trữ thông tin chứa trong biến $_GET, $_POST và $_COOKIE
Biến $_SESSION, $_COOKIE
Biến $_SESSION lưu trữ thông tin phiên làm việc của PHP, $_COOKIE dữ liệu nhỏ do trình duyệt gửi lên
Biến $_POST, $_GET
$_POST
là một mảng kết hợp, lưu thông tin gửi đến bằng phương thức HTTP POST.$_GET
là một mảng kết hợp, lưu thông tin gửi đến bằng phương thức HTTP GET, hay nói cách khác lưu các thông tin chuyển đến thông qua tham số từ URL
Tôi sẽ có bài viết riêng chia sẻ 2 biến này.
Biến $_FILES
Biến $_FILES lưu thông tin các file upload lên server. Tôi sẽ có bài viết riêng chia sẻ cái này.