PHP中获取当前页面的完整URL

#测试网址: http://localhost/blog/testurl.php?id=5

//获取域名或主机地址
echo $_SERVER['HTTP_HOST']."<br>"; #localhost

//获取网页地址
echo $_SERVER['PHP_SELF']."<br>"; #/blog/testurl.php

//获取网址参数
echo $_SERVER["QUERY_STRING"]."<br>"; #id=5

//获取用户代理
echo $_SERVER['HTTP_REFERER']."<br>";

//获取完整的url
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'];
#http://localhost/blog/testurl.php?id=5

//包含端口号的完整url
echo 'http://'.$_SERVER['SERVER_NAME'].':'.$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
#http://localhost:80/blog/testurl.php?id=5

//只取路径
$url='http://'.$_SERVER['SERVER_NAME'].$_SERVER["REQUEST_URI"];
echo dirname($url);
#http://localhost/blog

 

Yii url

<?php
 //当前域名
 
echo Yii::app()->request->hostInfo;
 
//除域名外的URL
 
echo Yii::app()->request->getUrl();
 
//除域名外的首页地址
 
echo Yii::app()->user->returnUrl;
 
//除域名外的根目录地址
 echo Yii::app()->homeUrl;
 ?>

假设我们当前页面的访问地址是:http://localhost/CMS/public/index.php?r=news&id=1
一、
1、获取当前域名:echo Yii::app()->request->hostInfo;
结果:http://localhost
 
2、获取(除域名外的)当前URL: echo Yii::app()->request->getUrl();
结果:/CMS/public/index.php?r=news&id=1
 
3、获取(除域名外的)首页地址: echo Yii::app()->user->returnUrl;
结果:/CMS/public/index.php
 
4、获取(除域名外的)根目录地址:echo Yii::app()->homeUrl;
结果:/CMS/public/index.php
 
5、echo Yii::app()->request->baseUrl;
结果:/CMS/public
 
6、获取网站根目录相对地址:echo Yii::app()->baseUrl;
结果:/CMS/public (注意:如果直接用这种方法指向网站根目录,请最好在其后面添加一个“/”,因为有时如果不添加“/”,有可能不能正确指向网站根目录。应用举例:<a href="<?php echo Yii::app()->baseUrl ;?>/">Home</a> )
 
二、
7、YII获取 IP地址:Yii::app()->request->userHostAddress;
 
8、Yii判断提交方式:Yii::app()->request-isPostRequest;
 
9、proteced目录的物理路径:Yii::app()->basePath;
 
10、获取上一页的url以返回:Yii::app()->request->urlReferrer;
 
11、获取当前控制器ID:Yii::app()->getController()->getAction()->id;
 
12、项目路径:dirname(Yii::app()->BasePath);
 
13、Yii获取get,post过来的数据:Yii::app()->request->getParam('id');
 
三、
14、Yii如何设置时区:
可以在config/main.php里'timeZone'=>'Asia/Chongqing',设定时区
15、防止重复提交:Ccontroler->refresh();

posted @ 2016-04-12 10:27  HatRed  阅读(156)  评论(0编辑  收藏  举报