6.4.1 PHP超全局数组(预定义变量)概述无标题文章

6.4.1 PHP超全局数组(预定义变量)概述

超全局数组(预定义变量)

• 服务器变量: $_SERVER
• 环境变量: $_ENV
• HTTP GET变量: $_GET
• HHTP POST变量: $_POST
• request变量: $_REQUEST
• HTTP文件上传变量: $_FILES
• HTTP Cookies:$_COOKIE
• Session变量: $_SESSION
• Global变量: $_GLOBALS

服务器变量: $_SERVER

$_SERVER是一个包含诸如头信息(header)、路径(path)和脚本位置(script locations)的数组。数组的实体由 web 服务器创建。不能保证所有的服务器都能产生所有的信息;服务器可能忽略了一些信息,或者产生了一些未在下面列出的新的信息。这是一个自动全局变量。这只不过意味这它在所有的脚本中都有效。在函数或方法中不需要使用 global $_SERVER;
PHP_SELF:当前正在执行脚本的文件名
DOCUMENT_ROOT:当前运行脚本所在的文档根目录
REMOTE_ADDR:正在浏览当前页面用户的 IP 地址。

环境变量:$_ENV

•在解析器运行时,这些变量从环境变量转变为 PHP 全局变量名称空间(namespace)。它们中的许多都是由 PHP 所运行的系统决定。完整的列表是不可能的。请查看系统的文档以确定其特定的环境变量。
•这是一个自动全局变量。它在所有的脚本中都有效。在函数或方法中不需要使用 global $_ENV; 

HTTP GET变量:$_GET

通过 HTTP GET 方法传递的变量组成的数组。是自动全局变量.
 http://localhost/login.php?name=zhangsan&id=100
    <?php
       echo “参数name的值:”.$_GET[“name”]; //zhangsan
       echo “参数id的值:”.$_GET[“id”];     //100
    ?>

HTTP POST变量:$_POST

•通过 HTTP POST 方法传递的变量组成的数组。是自动全局变量。
•与$_GET相似,只是方法不一样。

request变量:$_REQUEST

•此关联数组包含 $_GET$_POST$_COOKIE中的全部内容。

HTTP文件上传变量:$_FILES

•通过 HTTP POST 方法传递的已上传文件项目组成的数组。是自动全局变量。

HTTP Cookies:$_COOKIE

通过 HTTP cookies 传递的变量组成的数组。是自动全局变量。

Session变量:$_SESSION

•包含当前脚本中 session 变量的数组。参阅 Session 函数文档以获得更多信息。

Global变量:$GLOBALS

•由所有已定义全局变量组成的数组。变量名就是该数组的索引。

例 1.php

<?php
/*
 *  超全局数组(变量), 在PHP的脚本中, 已经声明完的变量, 你可以直接就去使用即可! 变量的名子已经规定好的了
 *
 *
 *  $_SERVER
 *  $_ENV
 *  $_GET
 *  $_POST
 *  $_REQUEST
 *  $_FILES
 *  $_COOKIE
 *  $_SESSION
 *  $GLOBALS
 *
 *
 *    超   全局   数组
 *
 *
 *    1. 数组(关联数组), 就和你自己声明的数组是一样的操作方式
 *    2. 全局
 *
 *
 */


    echo count($_SERVER);

    foreach($_SERVER as $key => $value) {
        echo "{$key}  =>  {$value} <br>";
    }

例2.php

<?php
/*
 *  超全局数组(变量), 在PHP的脚本中, 已经声明完的变量, 你可以直接就去使用即可! 变量的名子已经规定好的了
 *
 *
 *  $_SERVER
 *  $_ENV
 *  $_GET
 *  $_POST
 *  $_REQUEST
 *  $_FILES
 *  $_COOKIE
 *  $_SESSION
 *  $GLOBALS
 *
 *
 *    超   全局   数组
 *
 *
 *    1. 数组(关联数组), 就和你自己声明的数组是一样的操作方式
 *    2. 全局
 *
 *
 */

    $_GET=array("妹子", "峰哥");

    function demo() {
    //  global $arr;
        echo $_GET[0]."和".$_GET[1];
        $_GET['username']="admin";
    }

    demo();

    print_r($_GET);

例3 test.php

<?php
/*
 *  超全局数组(变量), 在PHP的脚本中, 已经声明完的变量, 你可以直接就去使用即可! 变量的名子已经规定好的了
 *
 *
 *  $_SERVER
 *  $_ENV
 *  $_GET
 *  $_POST
 *  $_REQUEST
 *  $_FILES
 *  $_COOKIE
 *  $_SESSION
 *  $GLOBALS
 *
 *
 *    超   全局   数组
 *
 *
 *    1. 数组(关联数组), 就和你自己声明的数组是一样的操作方式
 *    2. 全局
 *    3. 每个预定义的数组都有自独特的能力
 *
 */

    $_GET=array("妹子", "峰哥");

    function demo() {
    //  global $arr;
        echo $_GET[0]."和".$_GET[1];
        $_GET['username']="admin";
    }

    demo();

    print_r($_GET);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容