您的位置 首页 php

php预定义变量(超全局变量)分析

全局变量

*php里面的全局变量跟js里面的不太一样,它作用域只在函数外,而 局部变量 指作用域再函数内。不过*php里面有一些预定义变量,也叫超全局变量,它们作用域在函数内外,这样的变量大概有十个左右。

*其实超全局变量的数据类型都是数组!!

$_GET变量(数组)

这个变量可以获取get方式提交的表单数据。

这个超全局变量的用法:$_ GET[“名字”]

通过a标签href属性也可以获取到:

get方式提交的数据,会显示在地址栏里面,一般只有做搜索会用到这种方式。

$_POST

$_POST[“”]跟$_GET[“”]类似,提交方式用了的post,那么就可以这样获取到。

$_REQUEST

$_REQUEST[“”]可以获取get、post提交的数据,如果有get、post都提交了这个数据,最终获取谁的就要取决于php.ini设置

request_order = “GP”表示先get方式提交在post 提交,即post方式覆盖get方式

request_order = “PG”即表示get方式覆盖post方式

$_SERVER

这个变量是获取服务器相关信息的:

$_SERVER[‘PHP_SELF’] #当前正在执行 脚本的文件名,与 document root相关。

$_SERVER[‘argv’] #传递给该 脚本的参数。

$_SERVER[‘argc’] #包含传递给程序的 命令行参数的个数(如果运行在命令行模式)。

$_SERVER[‘GATEWAY_INTERFACE’] #服务器使用的 CGI 规范的版本。例如,“CGI/1.1”。

$_SERVER[‘SERVER_NAME’] #当前 运行脚本所在服务器 主机的名称。

$_SERVER[‘SERVER_SOFTWARE’] #服务器标识的 字串 ,在响应请求时的头部中给出。

$_SERVER[‘SERVER_PROTOCOL’] #请求页面时通信协议的名称和版本。例如,“HTTP/1.0”。

$_SERVER[‘REQUEST_METHOD’] #访问页面时的请求方法。例如:“GET”、“HEAD”,“POST”,“PUT”。

$_SERVER[‘QUERY_STRING’] #查询(query)的 字符串

$_SERVER[‘DOCUMENT_ROOT’] #当前 运行脚本所在的文档根目录。在 服务器配置 文件中定义。

$_SERVER[‘HTTP_ACCEPT’] #当前请求的 Accept: 头部的内容。

$_SERVER[‘HTTP_ACCEPT_CHARSET’] #当前请求的 Accept-Charset: 头部的内容。例如:“iso-8859-1,*,utf-8”。

$_SERVER[‘HTTP_ACCEPT_ENCODING’] #当前请求的 Accept-Encoding: 头部的内容。例如:“gzip”。

$_SERVER[‘HTTP_ACCEPT_LANGUAGE’]#当前请求的 Accept-Language: 头部的内容。例如:“en”。

$_SERVER[‘HTTP_CONNECTION’] #当前请求的 Connection: 头部的内容。例如:“Keep-Alive”。

$_SERVER[‘HTTP_HOST’] #当前请求的 Host: 头部的内容。

$_SERVER[‘ HTTP_REFERER’] #链接到当前页面的前一页面的 URL 地址。

$_SERVER[‘ HTTP_USER_AGENT’] #当前请求的 User-Agent: 头部的内容。

$_SERVER[‘HTTPS’] — 如果通过https访问,则被设为一个非空的值(on),否则返回off

$_SERVER[‘REMOTE_ADDR’] #正在浏览当前页面用户的 IP 地址。

$_SERVER[‘REMOTE_HOST’] #正在浏览当前页面用户的 主机名。

$_SERVER[‘REMOTE_PORT’] #用户连接到服务器时所使用的端口。

$_SERVER[‘SCRIPT_FILENAME’] #当前执行 脚本的 绝对路径名。

$_SERVER[‘SERVER_ADMIN’] # 管理员信息

$_SERVER[‘SERVER_PORT’] #服务器所使用的端口

$_SERVER[‘SERVER_SIGNATURE’] #包含服务器版本和 虚拟主机名的字符串。

$_SERVER[‘PATH_TRANSLATED’] #当前 脚本所在文件系统(不是文档根目录)的基本路径。

$_SERVER[‘SCRIPT_NAME’] #包含当前 脚本的路径。这在页面需要指向自己时非常有用。

$_SERVER[‘REQUEST_URI’] #访问此页面所需的 URI。例如,“/index.html”

$GLOBALS

这个超全局变量其实就是所有全局变量的集合(数组),这个数组的键值就是各个变量的名字。

其实再函数内部也是可以定义全局变量的:

global $a;

$a = 2;

这就是定义了一个全局变量,通过$_GLOBALS[“a”]也能获取到值。

文章来源:智云一二三科技

文章标题:php预定义变量(超全局变量)分析

文章地址:https://www.zhihuclub.com/150069.shtml

关于作者: 智云科技

热门文章

网站地图