PHP 全局变量 - 超全局变量

本站原创2019-03-10 12:08:39 148

超全局变量在 PHP 4.1.0 中引入,是在全部作用域中始终可用的内置变量。

PHP 全局变量 - 超全局变量

PHP 中的许多预定义变量都是“超全局的”,这意味着它们在一个脚本的全部作用域中都可用。在函数或方法中无需执行 global $variable; 就可以访问它们。

这些超全局变量是:

  • $GLOBALS
  • $_SERVER
  • $_REQUEST
  • $_POST
  • $_GET
  • $_FILES
  • $_ENV
  • $_COOKIE
  • $_SESSION

本节会介绍一些超全局变量,并会在稍后的章节讲解其他的超全局变量。

$GLOBALS — 引用全局作用域中可用的全部变量

$GLOBALS 这种全局变量用于在 PHP 脚本中的任意位置访问全局变量(从函数或方法中均可)。

PHP 在名为 $GLOBALS[index] 的数组中存储了所有全局变量。变量的名字就是数组的键。

下面的例子展示了如何使用超级全局变量 $GLOBALS:

实例

<?php 
$x = 75; 
$y = 25;
 
function addition() { 
  $GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y']; 
}
 
addition(); 
echo $z; 
?>

运行实例

在上面的例子中,由于 z 是 $GLOBALS 数组中的变量,因此在函数之外也可以访问它。

PHP $_SERVER

$_SERVER 这种超全局变量保存关于报头、路径和脚本位置的信息。

下面的例子展示了如何使用 $_SERVER 中的某些元素:

实例

<?php 
echo $_SERVER['PHP_SELF'];
echo "<br>";
echo $_SERVER['SERVER_NAME'];
echo "<br>";
echo $_SERVER['HTTP_HOST'];
echo "<br>";
echo $_SERVER['HTTP_REFERER'];
echo "<br>";
echo $_SERVER['HTTP_USER_AGENT'];
echo "<br>";
echo $_SERVER['SCRIPT_NAME'];
?>

运行实例

下表列出了您能够在 $_SERVER 中访问的最重要的元素:

元素/代码描述
$_SERVER['PHP_SELF']返回当前执行脚本的文件名。
$_SERVER['GATEWAY_INTERFACE']返回服务器使用的 CGI 规范的版本。
$_SERVER['SERVER_ADDR']返回当前运行脚本所在的服务器的 IP 地址。
$_SERVER['SERVER_NAME']返回当前运行脚本所在的服务器的主机名(比如 www.w3school.com.cn)。
$_SERVER['SERVER_SOFTWARE']返回服务器标识字符串(比如 Apache/2.2.24)。
$_SERVER['SERVER_PROTOCOL']返回请求页面时通信协议的名称和版本(例如,“HTTP/1.0”)。
$_SERVER['REQUEST_METHOD']返回访问页面使用的请求方法(例如 POST)。
$_SERVER['REQUEST_TIME']返回请求开始时的时间戳(例如 1577687494)。
$_SERVER['QUERY_STRING']返回查询字符串,如果是通过查询字符串访问此页面。
$_SERVER['HTTP_ACCEPT']返回来自当前请求的请求头。
$_SERVER['HTTP_ACCEPT_CHARSET']返回来自当前请求的 Accept_Charset 头( 例如 utf-8,ISO-8859-1)
$_SERVER['HTTP_HOST']返回来自当前请求的 Host 头。
$_SERVER['HTTP_REFERER']返回当前页面的完整 URL(不可靠,因为不是所有用户代理都支持)。
$_SERVER['HTTPS']是否通过安全 HTTP 协议查询脚本。
$_SERVER['REMOTE_ADDR']返回浏览当前页面的用户的 IP 地址。
$_SERVER['REMOTE_HOST']返回浏览当前页面的用户的主机名。
$_SERVER['REMOTE_PORT']返回用户机器上连接到 Web 服务器所使用的端口号。
$_SERVER['SCRIPT_FILENAME']返回当前执行脚本的绝对路径。
$_SERVER['SERVER_ADMIN']该值指明了 Apache 服务器配置文件中的 SERVER_ADMIN 参数。
$_SERVER['SERVER_PORT']Web 服务器使用的端口。默认值为 “80”。
$_SERVER['SERVER_SIGNATURE']返回服务器版本和虚拟主机名。
$_SERVER['PATH_TRANSLATED']当前脚本所在文件系统(非文档根目录)的基本路径。
$_SERVER['SCRIPT_NAME']返回当前脚本的路径。
$_SERVER['SCRIPT_URI']返回当前页面的 URI。

PHP $_REQUEST

PHP $_REQUEST 用于收集 HTML 表单提交的数据。

下面的例子展示了一个包含输入字段及提交按钮的表单。当用户通过点击提交按钮来提交表单数据时, 表单数据将发送到 <form> 标签的 action 属性中指定的脚本文件。在这个例子中,我们指定文件本身来处理表单数据。如果您需要使用其他的 PHP 文件来处理表单数据,请修改为您选择的文件名即可。然后,我们可以使用超级全局变量 $_REQUEST 来收集 input 字段的值:

实例

<html>
<body>

<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
Name: <input type="text" name="fname">
<input type="submit">
</form>

<?php 
$name =$_REQUEST['fname']; 
echo $name; 
?>

</body>
</html>

运行实例

PHP $_POST

PHP $_POST 广泛用于收集提交 method="post" 的 HTML 表单后的表单数据。$_POST 也常用于传递变量。

下面的例子展示了一个包含输入字段和提交按钮的表单。当用户点击提交按钮来提交数据后,表单数据会发送到 <form> 标签的 action 属性中指定的文件。在本例中,我们指定文件本身来处理表单数据。如果您希望使用另一个 PHP 页面来处理表单数据,请用更改为您选择的文件名。然后,我们可以使用超全局变量 $_POST 来收集输入字段的值:

实例

<html>
<body>

<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
Name: <input type="text" name="fname">
<input type="submit">
</form>

<?php 
$name =$_POST['fname'];
echo $name; 
?>

</body>
</html>

运行实例

PHP $_GET

PHP $_GET 也可用于收集提交 HTML 表单 (method="get") 之后的表单数据。

$_GET 也可以收集 URL 中的发送的数据。

假设我们有一张页面含有带参数的超链接:

<html>
<body>

<a href="test_get.php?subject=PHP&web=W3school.com.cn">测试 $GET</a>

</body>
</html>

当用户点击链接 "测试 $GET",参数 "subject" 和 "web" 被发送到 "test_get.php",然后您就能够通过 $_GET 在 "test_get.php" 中访问这些值了。

下面的例子是 "test_get.php" 中的代码:

实例

<html>
<body>

<?php 
echo "在 " . $_GET['web'] . " 学习 " . $_GET['subject'];
?>

</body>
</html>

运行实例

提示:您将在 PHP 表单 这一节中学到更多有关 $_POST 和 $_GET 的知识。


    分类检索
    娱乐休闲
    音乐 在线音乐 轻音乐 DJ/舞曲 原创/翻唱 音乐搜索 音乐周边 唱片公司 影视 影视资讯 在线影视 影视下载 视频播客 网络电视 游戏 游戏综合 网络游戏 网页游戏 单机游戏 小游戏 游戏论坛 游戏下载 单机电玩 游戏周边 游戏厂商 动漫 动漫综合 动漫下载 动漫原创 图片 图片图库 美女写真 相册贴图 电子贺卡 小说 小说阅读 小说搜索 电子书 文化文学 作家作品 笑话 幽默笑话 搞笑视频 星相 12星座 算命占卜 生肖/解梦 风水玄学 心理测试 交友 交友综合 情感爱情 婚嫁婚介 新闻 新闻综合 知名媒体 报刊杂志 时事论坛 各地媒体 体育 体育综合 NBA专区 足球专区 其他体育项目 体育相关 体育协会 军事 军事资讯 军事论坛 摄影 摄影综合 摄影论坛 明星 娱乐资讯 大陆明星 港台明星 欧美明星 日韩明星 追星一族 解读明星 社区 综合社区 SNS社区 特色论坛 校园BBS 地方论坛 直播
    电脑网络
    互联网 互联网资讯 门户名站 组织协会 IT IT资讯 IT博客 网络编辑 硬件 硬件资讯 硬件评测 硬件论坛 驱动程序 硬件相关 数码 数码资讯 数码论坛 数码相关 软件 软件资讯 软件下载 装机软件 软件论坛 软件评测 软件相关 电脑 电脑资讯 电脑报刊 网管技术 编程 程序编程 ASP/ASP.NET PHP JSP/JAVA CGI WAP VB C/C++/C# DELPHI Python LINUX/UNIX JS/AJAX WEB开发 数据库开发 嵌入式开发 源码下载 设计 设计综合 设计素材 设计竞标 平面设计 CG/FLASH 交互设计 室内设计 建筑设计 工业设计 服装设计 字体下载 建站 域名主机 网页制作 论坛/CMS 站长 站长资讯 站长工具 流量统计 网赚联盟 搜索 搜索引擎 特色搜索 网址 网址导航 分类目录 博客 博客 微博 网摘 RSS订阅 网摘/书签 资源 免费信息 电子邮箱 网络硬盘 网络相册 在线翻译 域名/DNS 主页/网店/论坛 桌面 桌面壁纸 主题屏保 分享 社会化分享 聊天 聊天工具 聊天室 QQ空间代码 QQ相关 黑客 黑客安全 黑客组织 黑客论坛 在线工具 杀毒 病毒防治 安全防毒论坛
    生活服务
    购物 综合购物 团购导航 导购打折 数码家电 图书音像 衣服首饰 鞋子箱包 美容化妆 母婴儿童 两性情趣 医药保健 食品饮料 礼品鲜花 珠宝眼镜 文体办公 日用家居 数字点卡 电子支付 彩票 在线购彩 福利彩票 体育彩票 天气 天气综合 交通 电子地图 道路交通 公交公司 航空公司 各地铁路 股票 财经资讯 股票综合 股票交流 财经报刊 证券公司 基金 投资理财 金融综合 基金资讯 证券债券 外汇资讯 期货资讯 黄金资讯 风险投资 基金公司 银行 银行网站 各地银行 港澳台银行 外资银行 银行机构 信用卡资讯 保险 保险资讯 保险公司 房产 房产综合 家居装修 地方房产 汽车 汽车资讯 报价交易 二手车 汽车配件 汽车论坛 用车学车 地方汽车 汽车厂商 电视 电视资讯 在线电视 在线电台 电视台 广播电台 手机 手机综合 手机报价 手机论坛 手机电影 手机游戏 手机软件 手机主题 短信图铃 通信 通信综合 通信运营商 各地电信 各地移动 各地联通 各地铁通 健康 医疗健康 寻医问药 健康养生 两性健康 心理健康 医院诊所 医学研究 药品器械 医院管理 疾病预防 美食 饮食营养 菜谱食谱 电子优惠券 宠物 宠物综合 猫猫狗狗 水族爬虫 宠物鸟 花草花卉 宠物用品 宠物医院 动物保护 儿童 儿童乐园 母婴亲子 亲子论坛 女性 女性综合 美容减肥 男人世界 时尚 时尚资讯 时尚杂志 奢侈品 旅游 旅游资讯 旅行社/酒店/机票 旅游景点 自助户外游 地方旅游网 生活 生活名站 网上记账 消费者协会 品牌 服装鞋帽 珠宝配饰 美容化妆 生活日用 餐饮食品 数码家电 文体办公 药品器械 查询 日常生活 交通旅游 金融理财 学习教育 电脑网络 综合其他 招聘 人才招聘 行业人才 地方人才 法律 法律综合 法律法规 知识产权 法律援助
    文化教育
    教育 教育综合 基础教育 高等教育 成人教育 职业教育 特殊教育 远程教育 教育科研 知识 百科问答 文档网站 外语 英语学习 其他语种 在线翻译 考试 考试招生 高考/自考/成考 公务员考试 考研 英语类考试(托福/雅思/GRE/PETS) 计算机考试 专业类考试 各地考试信息 论文 免费论文 课件资源 大学 国内高校 国外高校 校园 校园综合 同学录 图书馆 图书馆院 留学 出国留学 曲艺 相声/小品/评书 舞蹈 乐器 魔术杂技 地方戏 爱好 艺术鉴赏 收藏艺术 美术绘画 书法艺术 纹身 科技 科研机构 社会科学 自然科学 农业科学 工程科学 科普知识 发明专利 人文 社会文化 历史人文 历史名人 宗教 佛教 道教 基督教 伊斯兰教 公益 公益项目 公益基金 公益资讯
    综合其他
    政府 国家政府机构 地方政府机构 国际/区域组织 驻华使馆/领事馆 各国政府 行业 商业贸易 农林牧渔 物流快递 食品饮料 服装鞋帽 礼品玩具 建筑建材 家电音响 电子安防 能源电力 机械仪表 化学工业 纺织皮革 冶金矿产 五金模具 广告营销 印刷包装 出版发行 环保绿化 黄页 黄页大全 企业网站 酷站 美图分享 晒搭配 吃货据点 发现好音乐 新鲜科技 创意设计 爱旅行 爱手工 新潮社区 趣味测试 其他 菜鸟