PHP超全局变量

 

$GLOBALS

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

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

 

$_SERVER

保存关于报头、路径和脚本位置的信息

<?php 
//返回当前执行脚本的文件名
echo $_SERVER['PHP_SELF'];
//返回当前执行脚本的相对路径
echo $_SERVER['SCRIPT_NAME'];
//返回当前执行脚本的绝对路径
echo $_SERVER['SCRIPT_FILENAME'];
//返回当前页面的 URI
echo $_SERVER['SCRIPT_URI'];
//返回当前脚本所在服务器的主机名(www.xxx.com)
echo $_SERVER['SERVER_NAME'];
//返回当前请求的Host头(www.xxx.com)
echo $_SERVER['HTTP_HOST'];
//返回当前页面完整的URL(不可靠,不是所有用户代理都支持)(www.xxx.com/xxx/yyy?zzz)
echo $_SERVER['HTTP_REFERER'];
//返回用户机器上连接到 Web 服务器所使用的端口号
echo $_SERVER['REMOTE_PORT'];
//Web 服务器使用的端口。默认值为 “80”
echo $_SERVER['SERVER_PORT'];



//返回访问页面使用的请求方法(POST/GET)
echo $_SERVER['REQUEST_METHOD'];
//返回请求开始时的时间戳
echo $_SERVER['REQUEST_TIME'];
//返回查询字符串,如果是通过查询字符串访问此页面
echo $_SERVER['QUERY_STRING'];
//返回来自当前请求的请求头
echo $_SERVER['HTTP_ACCEPT'];
//返回来自当前请求的 Accept_Charset 头( 例如 utf-8,ISO-8859-1)
echo $_SERVER['HTTP_ACCEPT_CHARSET'];
?>

 

$_REQUEST

用于收集HTML表单提交的数据

<html>
<body>

<form method="post" action="test.php">
Name: <input type="text" name="fname">
<input type="submit">
</form>

</body>
</html>

test.php

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

 

$_POST

广泛用于收集提交 method="post" 的 HTML 表单后的表单数据。

也常用于传递变量。

上面那段test.php也可以用$_POST来写,因为metho是post

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

 

$_GET

如果method是get,我们也可以把test.php改成

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

除此之外$GET也可以用来收集URL中发送的数据

<a href="test_get.php?para1=test1&para2=test2">测试 $GET</a>

PHP

<?php 
echo "the first para is " . $_GET['para1'] . " and the second para is " . $_GET['para2'];
?>

 

 

除了上述超全局变量,还有以下超全局变量会被用到,先记录下来,以后再说。

$_FILES
$_ENV
$_COOKIE
$_SESSION

 

posted @ 2016-01-18 17:47  zcynine  阅读(321)  评论(0编辑  收藏  举报