search
Homephp教程php手册php global variables, php global variable definition

php global variables, php global variable definition

PHP global variables

Several superglobals are predefined in PHP, which means that they are available in the entire scope of a script. You can use it in functions and classes without special instructions.

PHP super global variable list:

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

In this chapter we will explain several commonly used super global variables, and we will introduce the remaining variables in the next few chapters.

PHP $GLOBAL

$GLOBAL is a super global variable group of PHP, which can be accessed in the entire scope of a PHP script.

$GLOBAL is a global combined array containing all variables. The name of the variable is the key of the array.

The following example shows how to use the super global variable $GLOBAL:

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

In the above example, z is a super global variable in the $GLOBALS array, which can also be accessed outside the function.

PHP $_SERVER

$_SERVER is an array containing information such as header, path, and script locations. The items in this array are created by the web server. There is no guarantee that every server will offer all items; servers may ignore some, or serve items not listed here.

The following example shows how to use the elements in $_SERVER:

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

Run

The following table lists the important elements in all $_SERVER variables:

元素/代码 描述
$_SERVER['PHP_SELF'] 当前执行脚本的文件名,与 document root 有关。例如,在地址为 http://example.com/test.php/foo.bar 的脚本中使用 $_SERVER['PHP_SELF'] 将得到 /test.php/foo.bar。__FILE__ 常量包含当前(例如包含)文件的完整路径和文件名。 从 PHP 4.3.0 版本开始,如果 PHP 以命令行模式运行,这个变量将包含脚本名。之前的版本该变量不可用。
$_SERVER['GATEWAY_INTERFACE'] 服务器使用的 CGI 规范的版本;例如,"CGI/1.1"。
$_SERVER['SERVER_ADDR'] 当前运行脚本所在的服务器的 IP 地址。
$_SERVER['SERVER_NAME'] 当前运行脚本所在的服务器的主机名。如果脚本运行于虚拟主机中,该名称是由那个虚拟主机所设置的值决定。(如: www.manongjc.com)
$_SERVER['SERVER_SOFTWARE'] 服务器标识字符串,在响应请求时的头信息中给出。 (如:Apache/2.2.24)
$_SERVER['SERVER_PROTOCOL'] 请求页面时通信协议的名称和版本。例如,"HTTP/1.0"。
$_SERVER['REQUEST_METHOD'] 访问页面使用的请求方法;例如,"GET", "HEAD","POST","PUT"。
$_SERVER['REQUEST_TIME'] 请求开始时的时间戳。从 PHP 5.1.0 起可用。 (如:1377687496)
$_SERVER['QUERY_STRING'] query string(查询字符串),如果有的话,通过它进行页面访问。
$_SERVER['HTTP_ACCEPT'] 当前请求头中 Accept: 项的内容,如果存在的话。
$_SERVER['HTTP_ACCEPT_CHARSET'] 当前请求头中 Accept-Charset: 项的内容,如果存在的话。例如:"iso-8859-1,*,utf-8"。
$_SERVER['HTTP_HOST'] 当前请求头中 Host: 项的内容,如果存在的话。
$_SERVER['HTTP_REFERER'] 引导用户代理到当前页的前一页的地址(如果存在)。由 user agent 设置决定。并不是所有的用户代理都会设置该项,有的还提供了修改 HTTP_REFERER 的功能。简言之,该值并不可信。)
$_SERVER['HTTPS'] 如果脚本是通过 HTTPS 协议被访问,则被设为一个非空的值。
$_SERVER['REMOTE_ADDR'] 浏览当前页面的用户的 IP 地址。
$_SERVER['REMOTE_HOST'] 浏览当前页面的用户的主机名。DNS 反向解析不依赖于用户的 REMOTE_ADDR。
$_SERVER['REMOTE_PORT'] 用户机器上连接到 Web 服务器所使用的端口号。
$_SERVER['SCRIPT_FILENAME'] 当前执行脚本的绝对路径。
$_SERVER['SERVER_ADMIN'] 该值指明了 Apache 服务器配置文件中的 SERVER_ADMIN 参数。如果脚本运行在一个虚拟主机上,则该值是那个虚拟主机的值。(如:someone@manongjc.com)
$_SERVER['SERVER_PORT'] Web 服务器使用的端口。默认值为 "80"。如果使用 SSL 安全连接,则这个值为用户设置的 HTTP 端口。
$_SERVER['SERVER_SIGNATURE'] 包含了服务器版本和虚拟主机名的字符串。
$_SERVER['PATH_TRANSLATED'] 当前脚本所在文件系统(非文档根目录)的基本路径。这是在服务器进行虚拟到真实路径的映像后的结果。
$_SERVER['SCRIPT_NAME'] 包含当前脚本的路径。这在页面需要指向自己时非常有用。__FILE__ 常量包含当前脚本(例如包含文件)的完整路径和文件名。
$_SERVER['SCRIPT_URI'] URI 用来指定要访问的页面。例如 "/index.html"。

 

PHP $_REQUEST

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

以下实例显示了一个输入字段(input)及提交按钮(submit)的表单(form)。 当用户通过点击 "Submit" 按钮提交表单数据时, 表单数据将发送至

标签中 action 属性中指定的脚本文件。 在这个实例中,我们指定文件来处理表单数据。如果你希望其他的PHP文件来处理该数据,你可以修改该指定的脚本文件名。 然后,我们可以使用超级全局变量 $_REQUEST 来收集表单中的 input 字段数据:
<span><</span><span>html</span><span>></span>
<span><</span><span>body</span><span>></span>

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

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

<span></</span><span>body</span><span>></span>
<span></</span><span>html</span><span>></span>

 

PHP $_POST

PHP $_POST 被广泛应用于收集表单数据,在HTML form标签的指定该属性:"method="post"。

以下实例显示了一个输入字段(input)及提交按钮(submit)的表单(form)。 当用户通过点击 "Submit" 按钮提交表单数据时, 表单数据将发送至

标签中 action 属性中指定的脚本文件。 在这个实例中,我们指定文件来处理表单数据。如果你希望其他的PHP文件来处理该数据,你可以修改该指定的脚本文件名。 然后,我们可以使用超级全局变量 $_POST 来收集表单中的 input 字段数据:
<span><</span><span>html</span><span>></span>
<span><</span><span>body</span><span>></span>

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

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

<span></</span><span>body</span><span>></span>
<span></</span><span>html</span><span>></span>

 

PHP $_GET

PHP $_GET 同样被广泛应用于收集表单数据,在HTML form标签的指定该属性:"method="get"。

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

假定我们有一个包含参数的超链接HTML页面:

<span><</span><span>html</span><span>></span>
<span><</span><span>body</span><span>></span>

<span><</span><span>a </span><span>href</span><span>="test_get.php?subject=PHP&web=manongjc.com"</span><span>></span>Test $GET<span></</span><span>a</span><span>></span>

<span></</span><span>body</span><span>></span>
<span></</span><span>html</span><span>></span>

当用户点击链接 "Test $GET", 参数 "subject" 和 "web" 将发送至"test_get.php",你可以在 "test_get.php" 文件中使用 $_GET 变量来获取这些数据。

以下实例显示了 "test_get.php" 文件的代码:

<span><</span><span>html</span><span>></span>
<span><</span><span>body</span><span>></span>

<span><?</span><span>php 
echo "Study " . $_GET['subject'] . " at " . $_GET['web'];
</span><span>?></span>

<span></</span><span>body</span><span>></span>
<span></</span><span>html</span><span>></span>

提示: 你如果想学习更多关于 $_POST 和 $_GET 的知识,请访问我们的 PHP 表单 章节。

原文地址:http://www.manongjc.com/php/php_globals.html

相关阅读:

如何将一个表单提交到多个页面

php 一个页面处理多个表单

php 表单提交GET与POST实例分享

php 实例之使用表单提交的方法来发送邮件(用户反馈)

php 获取提交表单数组实例

分享表单提交给本页的实例

php 过滤表单特殊字符实例

表单提交及php处理表单数据的实例

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
C++ 函数的局部变量和全局变量有什么区别?C++ 函数的局部变量和全局变量有什么区别?Apr 19, 2024 pm 03:42 PM

C++局部变量和全局变量的区别:可见性:局部变量仅限于定义函数,而全局变量在整个程序中可见。内存分配:局部变量在栈上分配,而全局变量在全局数据区分配。作用域:局部变量在函数内,而全局变量在整个程序中。初始化:局部变量在函数调用时初始化,而全局变量在程序启动时初始化。重新创建:局部变量在每次函数调用时重新创建,而全局变量仅在程序启动时创建。

go语言有静态全局变量么go语言有静态全局变量么Jul 11, 2023 pm 03:37 PM

go语言没有静态全局变量,它使用了一种更为灵活的方式来处理全局变量的需求,全局变量通常是在包级别被声明,也就是在函数外部声明的变量,这些全局变量在整个包中均是可见的,可以在包中的任何函数中使用。

php request什么意思php request什么意思Jul 07, 2021 pm 01:49 PM

request的中文意思为“请求”,是php中的一个全局变量,是一个包含了“$_POST”、“$_GET”和“$_COOKIE”的数组。“$_REQUEST”变量可以获取POST或GET方式提交的数据、COOKIE信息。

在JavaScript中实现全局变量的安全性在JavaScript中实现全局变量的安全性Jun 15, 2023 pm 10:33 PM

随着JavaScript的流行,越来越多的网站和应用程序都依赖于JavaScript。然而,JavaScript中全局变量的使用可能存在安全问题。在此文中,我将介绍如何在JavaScript中实现全局变量的安全性。避免使用全局变量最好的方法是避免使用全局变量。在JavaScript中,所有变量都默认为全局变量,除非它们在函数中声明。因此,应尽可能使用局部变量

Golang函数的全局变量和局部变量的数据竞争分析Golang函数的全局变量和局部变量的数据竞争分析May 21, 2023 am 08:19 AM

Golang是一种强类型编程语言,具有高效、简洁、并发等特点,因此逐渐受到了越来越多的开发者的青睐。而在Golang的开发中,函数的全局变量和局部变量往往会涉及到数据竞争的问题。本文将从实际编码的角度,对Golang函数中全局变量和局部变量的数据竞争问题进行分析。一、全局变量的数据竞争Golang全局变量在所有函数中均可以访问,因此如果不进行严谨的设计和编码

C程序中全局变量的重新声明C程序中全局变量的重新声明Sep 20, 2023 pm 10:29 PM

我们将了解在不初始化的情况下重新声明全局变量、通过初始化重新声明全局变量、重新声明全局变量并初始化两次时,C和C++的行为有何不同。另外,我们将使用局部变量重复上述组合。1.A)C程序:重新声明全局变量而不进行初始化#include<stdio.h>intvar;intvar;intmain(){&nbsp;&nbsp;printf("Var=%d",var);&nbsp;&nbsp;return0;}输出Var=0B)C++程序:

golang函数能否在goroutine中直接访问全局变量?golang函数能否在goroutine中直接访问全局变量?May 01, 2024 pm 05:51 PM

是的,Go函数在Goroutine中默认情况下可以直接访问全局变量。原因:Goroutine继承创建它的Goroutine的内存空间,包括对全局变量的访问权限。

php全局变量都有哪些php全局变量都有哪些Aug 01, 2023 pm 01:21 PM

php全局变量有:1、$_SERVER,当前脚本运行的服务器和执行环境信息的超全局变量;2、$_GET,通过GET方法传递给当前脚本的变量的关联数组;3、$_POST,通过POST方法传递给当前脚本的变量的关联数组;4、$_SESSION,存储当前会话中用户相关信息;5、$_COOKIE,通过HTTP Cookie传递给当前脚本的变量的关联数组;6、$_FILES等等。

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment

SublimeText3 English version

SublimeText3 English version

Recommended: Win version, supports code prompts!

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools