• 参考菜鸟教程,并经过自己亲手实验,记录PHP的几个超级全局变量

  • 所谓超级全局变量 ,你可以理解为在一个脚本里面的全部代码里面都可以使用的变量。

  • $GLOBALS

    $GLOBALS  是 php 的一个超级全局变量组,在PHP脚本中的全部作用域都可以访问
$GLOBALS 是一个包含了全部变量的全局组合数组,变量的名字就是 $GLOBAL 的键值。
你可以理解为 使用了 $GLOBALS 就可以使用这个脚本里面的任何一个任何地方的变量。
例子如下
   <!doctype html>
<html> <body> <?php
$a = 55;
$b = 66; function add_test()
{
$GLOBALS['c'] = $GLOBALS['a'] + $GLOBALS['b'];
} add_test();
echo $c; ?> </body> </html>
![](http://images2017.cnblogs.com/blog/991711/201711/991711-20171101150641716-1368246906.png)
  • $_SERVER 超级全局变量

    $_SERVER 是一个包含比如 头信息, 脚本路径,名称各种属性的超级全局变量,这个数组由 web 服务器创建
$_SERVER 有一些常用的键值,如下: $_SERVER['PHP_SELF'] 表示的是当前执行执行脚本的名字, 比如说当前是 index.php , 那么这个值就是 index.php
$_SERVER['GATEWAY_INTERFACE'] 表示服务器所使用的 CGI 规范的版本
$_SERVER['SERVER_ADDR'] 当前运行脚本所在的服务器的 IP 地址。
$_SERVER['SERVER_NAME'] 当前运行脚本所在的服务器的主机名
$_SERVER['SERVER_SOFTWARE'] 服务器标识字符串,在响应请求时的头信息中给出,如Apache/2.2.24
$_SERVER['SERVER_PROTOCOL'] 请示页面时通信协议的名称和版本, 如: HTTP/1.0
$_SERVER['REQUEST_METHOD'] 访问页面使用的请求方法, 例如:"GET" "HEAD", "POST" , "PUT"
$_SERVER['REQUEST_TIME'] 请求开始时的时间戳, 如 1377687499
$_SERVER['QUERY_STRING'] query string (查询字符串), 如果有的话,通过他进行页面访问
$_SERVER['HTTP_ACCEPT'] 当前请求头中 Accept 项中的内容, 如果存在的话。
$_SERVER['HTTP_ACCEPT_CHARSET'] 当前请求头中 Accept-Charset 项中的内容
$_SERVER['HTTP_HOST'] 当前请求中 Host 项的内容,如果存在的话。
$_SERVER['REMOTE_ADDR'] 浏览当前页面的用户的 IP 地址。
$_SERVER['REMOTE_HOST'] 浏览当前页面的用户的主机名。DNS 反向解析不依赖于用户的 REMOTE_ADDR。
$_SERVER['REMOTE_PORT'] 用户机器上连接到 Web 服务器所使用的端口号。
$_SERVER['SCRIPT_FILENAME'] 当前执行脚本的绝对路径。
$_SERVER['SCRIPT_NAME'] 包含当前脚本的路径。这在页面需要指向自己时非常有用。__FILE__ 常量包含当前脚本(例如包含文件)的完整路径和文件名。 例子如下:
        <!doctype html>
<html> <body> <?php echo $_SERVER['PHP_SELF'];
echo "<br>";
echo $_SERVER['GATEWAY_INTERFACE'];
echo "<br>";
echo $_SERVER['SERVER_ADDR'];
echo "<br>";
echo $_SERVER['SERVER_NAME'];
echo "<br>";
echo $_SERVER['SERVER_SOFTWARE'];
echo "<br>";
echo $_SERVER['SERVER_PROTOCOL'];
echo "<br>";
echo $_SERVER['REQUEST_METHOD'];
echo "<br>";
echo $_SERVER['REQUEST_TIME'];
echo "<br>";
echo $_SERVER['REMOTE_ADDR'];
echo "<br>";
echo $_SERVER['REMOTE_HOST'];
echo "<br>";
echo $_SERVER['REMOTE_PORT'];
echo "<br>";
echo $_SERVER['SCRIPT_NAME'];
echo "<br>"; ?> </body> </html>
    例子
![](http://images2017.cnblogs.com/blog/991711/201711/991711-20171101162557341-1524850394.png)
  • $_REQUEST

    $_REQUEST  是用于收集  HTML 表单提交的数据。
例子如下:
        <!doctype html>
<html> <body> <form method="post" action="<?php echo $_SERVER['PHP_SELF'] ?> ">
name : <input type="text" name="example">
<input type="submit">
</form> <?php
$name = $_REQUEST['example'];
echo $name;
?> </body> </html>
    效果:
![](http://images2017.cnblogs.com/blog/991711/201711/991711-20171101164958420-1914807539.png)
  • $_POST 功能上基本和 $_REQUEST 基本一样

    例子如下:
    <!doctype html>
<html> <body> <form method="post" action="<?php echo $_SERVER['PHP_SELF'] ?>">
test : <input type="text" name="test1">
<input type="submit">
</form> <?php
$test1 = $_POST['test1'];
echo $test1
?> </body> </html>
    效果:
![](http://images2017.cnblogs.com/blog/991711/201711/991711-20171101170020248-1203073496.png)
  • $_GET 的用法和上面的有类似的地方,如下:

   <!doctype html>
<html> <body> <form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="get">
name: <input type="text" name="fname">
age: <input type="text" name="age">
<input type="submit" value="check">
</form> <?php
echo "name: ".$_GET['fname']."<br>";
echo "age : ".$_GET['age']."<br>";
?> </body> </html>
    效果:
![](http://images2017.cnblogs.com/blog/991711/201711/991711-20171101180355091-90099534.png)

PHP 之超级全局变量的更多相关文章

  1. 跟着百度学PHP[6]超级全局变量

    超级全局变量在PHP 4.1.0之后被启用, 是PHP系统中自带的变量,在一个脚本的全部作用域中都可用. 参考文献:http://www.runoob.com/php/php-superglobals ...

  2. PHP中变量,常量,超级全局变量小结

    //一般来说,变量在函数无法在函数体中无法访问,但是常量可以.//超级全局变量确实可以的,地址栏上的参数/*$GLOBALS   //变量注册的信息$_GET      //地址栏参数$_POST   ...

  3. PHP 超级全局变量

    超级全局变量在PHP 4.1.0之后被启用, 是PHP系统中自带的变量,在一个脚本的全部作用域中都可用. PHP中预定义了几个超级全局变量(superglobals) ,这意味着它们在一个脚本的全部作 ...

  4. PHP中的超级全局变量

    PHP内置了一些超级全局变量,我们可以在脚本的任何地方使用和可见,下面记录一下这些全局变量的作用: 1.$_SERVER $_SERVER超级全局变量包含由web服务器创建的信息,它提供了服务器和客户 ...

  5. PHP超级全局变量总结

    silicon1985 的 重要的PHP超级全局变量总结 PHP有9个提前定义变量数组.分别总结例如以下: 1.$_SERVER $_SERVER超级全局变量包括由webserver创建的信息.它提供 ...

  6. PHP利用超级全局变量$_GET来接收表单数据。

    我们在linux上用 touch php_get.html php_get.php创建两个文件. php_get.html文件的代码如下: <!doctype html> <html ...

  7. PHP利用超级全局变量$_POST来接收表单数据。

    利用$_POST超级全局变量接收表单的数据,然后利用echo输出到页面. 下面是代码: <!doctype html> <html> <head> <titl ...

  8. PHP超级全局变量、魔术变量和魔术函数

    PHP超级全局变量(9个) $GLOBALS 储存全局作用域中的变量 $_SERVER 获取服务器相关信息 $_REQUEST 获取POST和GET请求的参数 $_POST 获取表单的POST请求参数 ...

  9. php之快速入门学习-12(超级全局变量)

    PHP 超级全局变量 超级全局变量在PHP 4.1.0之后被启用, 是PHP系统中自带的变量,在一个脚本的全部作用域中都可用. PHP 超级全局变量 PHP中预定义了几个超级全局变量(superglo ...

随机推荐

  1. PHP原生:分享一个轻量级的缓存类=>cache.php

    适用:原生PHP cache.php tips:代码最后有适用Demo哦. <?php /* * 缓存类 cache */ define("cacheRoot"," ...

  2. Java中entity(实体类)的写法规范

    在日常的Java项目开发中,entity(实体类)是必不可少的,它们一般都有很多的属性,并有相应的setter和getter方法.entity(实体类)的作用一般是和数据表做映射.所以快速写出规范的e ...

  3. C实现9种排序算法

    算法复杂度以及稳定性分析 算法名称 平均时间 辅助空间 稳定性 冒泡排序 O(n2) O(1) 是 选择排序 O(n2) O(1) 否 插入排序 O(n2) O(1) 是 自底向上归并排序 O(nlo ...

  4. Ubuntu14.04 mount远程服务器上的目录

    备忘用. 一,远程服务器设置: 1,在/etc/exports中添加如下配置: /home/xxx *(insecure,rw,sync,no_root_squash,anonuid=123,anon ...

  5. 学习Tkinter

    tutorial point这个网站教程很多,无所不包.还包括一堆在线IDE,值得收藏 一.第一个tkinter程序 import tkinter top = tkinter.Tk() # Code ...

  6. python学习笔记—— 多进程中的 孤儿进程和僵尸进程

    1 基本概述 1.1 孤儿进程和僵尸进程 父进程创建子进程后,较为理想状态是子进程结束,父进程回收子进程并释放子进程占有的资源:而实际上,父子进程是异步过程,两者谁先结束是无顺的,一般可以通过父进程调 ...

  7. Linux内核同步 - sleepable RCU的实现

    一.前言 由于曾经在Linux2.6.23上工作了多年,我对这个版本还是非常有感情的(抛开感情因素,本来应该选择longterm的2.6.32版本来分析的,^_^),本文主要就是描述Linux2.6. ...

  8. LeetCode94 Binary Tree Inorder Traversal(迭代实现) Java

    题目: Given a binary tree, return the inorder traversal of its nodes' values. For example: Given binar ...

  9. lua——元表、元方法、继承

    [元表] 元表中的键为事件(event),称值为元方法(metamethod). 通过函数getmetatable查询不论什么值的元表,通过函数setmetatable替换表的元表. setmetat ...

  10. LCA近期公共祖先

    LCA近期公共祖先 该分析转之:http://kmplayer.iteye.com/blog/604518 1,并查集+dfs 对整个树进行深度优先遍历.并在遍历的过程中不断地把一些眼下可能查询到的而 ...