以下是PHP5 SuperGlobals
$GLOBALS
$_REQUEST
$_GET
$_POST
$_FILES
$_SERVER
$_ENV
$_COOKIE
$_SESSION
$GLOBALS:此SuperGlobal变量用于访问全局变量。
<?php $a = 10; function foo(){ echo $GLOBALS['a']; } //它将打印10个全局变量a ?>
$_REQUEST:此SuperGlobal变量用于收集HTML表单提交的数据。
<?php if(isset($_REQUEST['user'])){ echo $_REQUEST['user']; } //这将打印使用POST和/或GET MEthod提交的name = user的HTML字段的值 ?>
$_GET:此SuperGlobal变量用于收集HTML Form使用get方法提交的数据。
<?php if(isset($_GET['username'])){ echo $_GET['username']; } //这将打印使用GET方法提交的名称为用户名的HTML字段的值 ?>
$_POST:此SuperGlobal变量用于收集HTML Form使用post方法提交的数据。
<?php if(isset($_POST['username'])){ echo $_POST['username']; } //这将打印使用POST方法提交的名称为用户名的HTML字段的值 ?>
$_FILES:此SuperGlobal变量通过HTTP Post方法保存上载文件的信息。
<?php if($_FILES['picture']){ echo "<pre>"; print_r($_FILES['picture']); echo "</pre>"; } /** 这将打印通过带有method='post和enctype='multipart/form data'的表单上载的名为picture的文件的详细信息 详细信息包括文件名、文件类型、临时文件位置、错误代码(如果上载文件时发生错误)和文件大小(以字节为单位)。 Array ( [picture] => Array ( [0] => Array ( [name] => 400.png [type] => image/png [tmp_name] => /tmp/php5Wx0aJ [error] => 0 [size] => 15726 ) ) ) */ ?>
$_SERVER:此SuperGlobal变量保存有关脚本,HTTP标头和服务器路径的信息。
<?php echo "<pre>"; print_r($_SERVER); echo "</pre>"; /** Will print the following details on my local XAMPP Array ( [MIBDIRS] => C:/xampp/php/extras/mibs [MYSQL_HOME] => \xampp\mysql\bin [OPENSSL_CONF] => C:/xampp/apache/bin/openssl.cnf [PHP_PEAR_SYSCONF_DIR] => \xampp\php [PHPRC] => \xampp\php [TMP] => \xampp\tmp [HTTP_HOST] => localhost [HTTP_CONNECTION] => keep-alive [HTTP_CACHE_CONTROL] => max-age=0 [HTTP_UPGRADE_INSECURE_REQUESTS] => 1 [HTTP_USER_AGENT] => Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 [HTTP_ACCEPT] => text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*;q=0.8 [HTTP_ACCEPT_ENCODING] => gzip, deflate, sdch [HTTP_ACCEPT_LANGUAGE] => en-US,en;q=0.8 [PATH] => C:\xampp\php;C:\ProgramData\ComposerSetup\bin; [SystemRoot] => C:\Windows [COMSPEC] => C:\Windows\system32\cmd.exe [PATHEXT] => .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC [WINDIR] => C:\Windows [SERVER_SIGNATURE] => Apache/2.4.16 (Win32) OpenSSL/1.0.1p PHP/5.6.12 Server at localhost Port 80 [SERVER_SOFTWARE] => Apache/2.4.16 (Win32) OpenSSL/1.0.1p PHP/5.6.12 [SERVER_NAME] => localhost [SERVER_ADDR] => ::1 [SERVER_PORT] => 80 [REMOTE_ADDR] => ::1 [DOCUMENT_ROOT] => C:/xampp/htdocs [REQUEST_SCHEME] => http [CONTEXT_PREFIX] => [CONTEXT_DOCUMENT_ROOT] => C:/xampp/htdocs [SERVER_ADMIN] => postmaster@localhost [SCRIPT_FILENAME] => C:/xampp/htdocs/abcd.php [REMOTE_PORT] => 63822 [GATEWAY_INTERFACE] => CGI/1.1 [SERVER_PROTOCOL] => HTTP/1.1 [REQUEST_METHOD] => GET [QUERY_STRING] => [REQUEST_URI] => /abcd.php [SCRIPT_NAME] => /abcd.php [PHP_SELF] => /abcd.php [REQUEST_TIME_FLOAT] => 1469374173.88 [REQUEST_TIME] => 1469374173 ) */ ?>
$_ENV:此SuperGlobal变量Shell环境变量详细说明了运行PHP的环境。
$_COOKIE:此SuperGlobal变量用于检索具有给定键的Cookie值。
<?php $cookie_name = "data"; $cookie_value = "Foo Bar"; setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/"); // 86400 = 1天 if(!isset($_COOKIE[$cookie_name])) { echo "Cookie named '" . $cookie_name . "' is not set!"; } else { echo "Cookie '" . $cookie_name . "' is set!<br>"; echo "值是: " . $_COOKIE[$cookie_name]; } /** Output Cookie 'data' is set! 值是: Foo Bar */ ?>
$_SESSION:此SuperGlobal变量用于设置和检索存储在服务器上的会话值。
<?php //开始会议 session_start(); /** Setting the Session Variables that can be accessed on different pages on save server. */ $_SESSION["username"] = "John Doe"; $_SESSION["user_token"] = "d5f1df5b4dfb8b8d5f"; echo "Session is saved successfully"; /** Output Session is saved successfully */ ?>