$_SERVER 包含http信息头,路径和服务器端的一些信息,没发送一次HTTP请求,就会创建一个$_SERVER数组
Array
(
[HTTP_HOST] => localhost
[HTTP_REFERER] => 从那个链接过来
[SERVER_NAME] => localhost
[SERVER_ADDR] => 127.0.0.1
[SERVER_PORT] => 80
[REMOTE_ADDR] => 127.0.0.1
[DOCUMENT_ROOT] => C:/wamp/www/
[REMOTE_PORT] => 11642
[REQUEST_METHOD] => GET
[REQUEST_URI] => /study/page.php?page=2&name=dujie
[QUERY_STRING] => page=2&name=dujie
[SCRIPT_FILENAME] => C:/wamp/www/study/Page.php
[SCRIPT_NAME] => /study/page.php
[PHP_SELF] => /study/page.php
[REQUEST_TIME] => 1436345404
)
$_GET
通过url传参给当前脚本的变量数组,传中文时会出现乱码
解决:
使用urlencode($string) 进行编码,然后在脚本里使用 urldecode($_GET['name']),进行解码
例:
$str=urldecode('北京');
<a href="a.php?name=".$str>北京</a>
echo urldecode($_GET['name']);
$_POST
通过表单传参http传递给当前脚本的变量数组 无乱码问题
小技巧
? 号传值
<a href="">本页面</a>
<a href="?"> 表示清除传参 返回首页 index
$_REQUEST
包含$_GET $_POST $COOKIE传递的信息数组
判断GET/POST提交?
if($_SERVER[REQUEST_METHOD]=='post')
header()函数
@1 设置输出头
header("Content-type:text/html;charset=utf-8");
@2 重定向操作
header("Location:http://www.baidu.com");
@3 强制用户访问这个页面时获取最新资源,而不是使用存在客户端的缓存
header("Expires: Mon, 26 Jul 1970 05:00:00 GMT");
//告诉浏览器此页面的过期时间(用格林威治时间表示),只要是已经过去的日期即可。
@4 指定时间重定向页面
header("refresh:3;url=http://www.baidu.com");