PHP cung cấp một số lượng lớn biến được định nghĩa trước cho bất kỳ script nào chạy. PHP cung cấp một tập hợp bổ sung cho các mảng chứa các biến từ Web Server, biến môi trường và user input. Những mảng mới này được gọi là Superglobal.
Tất cả các biến sau là tự động có sẵn trong mọi phạm vi.
Superglobal trong PHP
Bạn có thể sử dụng tất cả các biến dưới đây ở bất kỳ đâu trong phần PHP code của mình.
Biến | Miêu tả |
---|---|
$GLOBALS | Chứa một tham chiếu tới mỗi biến mà hiện tại có sẵn bên trong phạm vi toàn cục của script. Key của mỗi mảng là các tên của các biến toàn cục này |
$_SERVER | Đây là một mảng chứa thông tin như header, path và vị trí script. Các entry trong mảng này được tạo bởi Web Server. Không có sự đảm bảo rằng mỗi Web Server sẽ cung cấp bất kỳ biến nào trong dạng biến này. Bạn theo dõi phần tiếp theo để có danh sách tất cả biến Server |
$_GET | Một mảng liên hợp của các biến được truyền tới script hiện tại thông qua phương thức HTTP GET |
$_POST | Một mảng liên hợp của các biến được truyền tới script hiện tại thông qua phương thức HTTP POST |
$_FILES | Một mảng liên hợp của các item được upload tới script hiện tại thông qua phương thức HTTP POST |
$_REQUEST | Một mảng liên hợp gồm nội dung của $_GET, $_POST và $_COOKIE |
$_COOKIE | Một mảng liên hợp của các biến được truyền tới script hiện tại thông qua HTTP cookie |
$_SESSION | Một mảng liên hợp chứa các biến session có sẵn cho script hiện tại |
$_PHP_SELF | Một chuỗi chứa tên tệp PHP script trong đó nó được gọi |
$php_errormsg | $php_errormsg là một biến chứa text của thông báo lỗi cuối cùng được tạo bởi PHP |
Biến $_SERVER trong PHP
Biến $_SERVER là một mảng chứa thông tin như header, path, và vị trí script. Các entry trong mảng này được tạo bởi Web Server. Sẽ không có sự bảo đảm rằng mỗi Web Server sẽ cung cấp bất kỳ biến nào trong dạng biến Server này.
Biến | Miêu tả |
---|---|
$_SERVER['PHP_SELF'] | Tên file của script đang thực thi hiện tại, liên quan tới Document root |
$_SERVER['argv'] | Mảng các tham số được truyền tới script. Khi script đó chạy trên command line, nó cung cấp dạng truy cập kiểu C-style tới các tham số dòng lệnh. Khi được gọi thông qua phương thức GET, biến này sẽ chứa chuỗi truy vấn |
$_SERVER['argc'] | Chứa số tham số dòng lệnh được truyền cho script nếu chạy trên command line |
$_SERVER['GATEWAY_INTERFACE'] | Server đang sử dụng phiên bản CGI specification nào, ví dụ 'CGI/1.1' |
$_SERVER['SERVER_ADDR'] | Địa chỉ IP của Server mà script đang thực thi |
$_SERVER['SERVER_NAME'] | Tên Server host mà script đang thực thi. Nếu script đang chạy trên một virtual host, biến này sẽ là giá trị được định nghĩa cho virtual host đó |
$_SERVER['SERVER_SOFTWARE'] | Chuỗi nhận diện Server, được cung cấp trong các header khi phản hồi lại các yêu cầu |
$_SERVER['SERVER_PROTOCOL'] | Tên và phiên bản của giao thức thông tin mà thông qua nó trang được yêu cầu, ví dụ: 'HTTP/1.0'; |
$_SERVER['REQUEST_METHOD'] | Phương thức yêu cầu nào được sử dụng để truy cập trang, ví dụ: 'GET', 'HEAD', 'POST', 'PUT' |
$_SERVER['REQUEST_TIME'] | Là timestamp của phần bắt đầu yêu cầu. Có sẵn từ PHP 5.1.0 |
$_SERVER['QUERY_STRING'] | Chuỗi truy vấn thông qua đó trang được truy cập |
$_SERVER['DOCUMENT_ROOT'] | Thư mục Document root mà script đang thực thi, như được định nghĩa trong file cấu hình của Server |
$_SERVER['HTTP_ACCEPT'] | Nội dung của Accept: header từ yêu cầu hiện tại, nếu có một |
$_SERVER['HTTP_ACCEPT_CHARSET'] | Nội dung của Accept-Charset: header từ yêu cầu hiện tại, nếu có một . Ví dụ: 'iso-8859-1,*,utf-8' |
$_SERVER['HTTP_ACCEPT_ENCODING'] | Nội dung của Accept-Encoding: header từ yêu cầu hiện tại, nếu có một. Ví dụ: 'gzip' |
$_SERVER['HTTP_ACCEPT_LANGUAGE'] | Nội dung của Accept-Language: header từ yêu cầu hiện tại, nếu có một. Ví dụ: 'en' |
$_SERVER['HTTP_CONNECTION'] | Nội dung của Connection: header từ yêu cầu hiện tại, nếu có một. Ví dụ: 'Keep-Alive' |
$_SERVER['HTTP_HOST'] | Nội dung của Host: header từ yêu cầu hiện tại, nếu có một |
$_SERVER['HTTP_REFERER'] | Địa chỉ của trang mà hướng user agent tới trang hiện tại |
$_SERVER['HTTP_USER_AGENT'] | Đây là chuỗi diễn đạt việc user agent đang truy cập trang. Ví dụ đặc trưng là: Mozilla/4.5 [en] (X11; U; Linux 2.2.9 i586) |
$_SERVER['HTTPS'] | Thiết lập tới một giá trị non-empty nếu script được truy vấn thông qua giao thức HTTPS |
$_SERVER['REMOTE_ADDR'] | Địa chỉ IP từ đó người dùng quan sát trang hiện tại |
$_SERVER['REMOTE_HOST'] | Tên Host từ đó người dùng quan sát trang hiện tại |
$_SERVER['REMOTE_PORT'] | Cổng (port) đang được sử dụng trên máy người dùng để giao tiếp với Web Server |
$_SERVER['SCRIPT_FILENAME'] | Pathname tuyệt đối của script đang thực thi hiện tại |
$_SERVER['SERVER_ADMIN'] | Giá trị được cung cấp cho chỉ thị SERVER_ADMIN (với Apache) trong file cấu hình Web Server |
$_SERVER['SERVER_PORT'] | Cổng (port) trên máy Server đang được sử dụng bởi Server để giao tiếp. Cài đặt mặc định là '80' |
$_SERVER['SERVER_SIGNATURE'] | Chuỗi chứa phiên bản Server và tên host mà được thêm tới trang được tạo bởi Server, nếu được kích hoạt |
$_SERVER['PATH_TRANSLATED'] | Path cho script hiện tại |
$_SERVER['SCRIPT_NAME'] | Chứa path của script hiện tại. Biến này hữu ích cho các trang mà cần trỏ tới chính chúng |
$_SERVER['REQUEST_URI'] | URI mà được cung cấp để truy cập trang này, ví dụ '/index.html' |
$_SERVER['PHP_AUTH_DIGEST'] | Khi chạy dưới Apache như là module đang thực hiện Digest HTTP authentication, biến này được thiết lập là 'Authorization' header được gửi bởi Client |
$_SERVER['PHP_AUTH_USER'] | Khi đang chạy dưới Apache hoặc IIS (ISAPI on PHP 5) như là module đang thực hiện HTTP authentication, thì biến này được thiết lập là username được cung cấp bởi người dùng |
$_SERVER['PHP_AUTH_PW'] | Khi đang chạy dưới Apache hoặc IIS (ISAPI on PHP 5) như là module đang thực hiện HTTP authentication, thì biến này được thiết lập là password được cung cấp bởi người dùng |
$_SERVER['AUTH_TYPE'] | Khi đang chạy dưới Apache như là module đang thực hiện HTTP authenticated, thì biến này được thiết lập là authentication type |