javascript实现:
top.location.href 顶级窗口的地址
this.location.href 当前窗口的地址
PHP实现:
#测试网址1:http://localhost/blog/testurl.php?id=5
#测试网址2:http://test./index.php/show/game/?aid=12(假设配置的端口号为8080)
//获取域名或主机地址:$_SERVER['HTTP_HOST']或$_SERVER['SERVER_NAME'] #localhost #test.
//获取端口号:$_SERVER["SERVER_PORT"] #80 #8080
//获取网页地址:$_SERVER['PHP_SELF'] #/blog/testurl.php #/index.php
//获取网址参数:$_SERVER["QUERY_STRING"] #id=5 #aid=12
//获取当前URL的路径地址:$_SERVER["REQUEST_URI"] #/blog/testurl.php?id=5 #/index.php/show/game/?aid=12
//获取用户代理(即当前页面的前一页面的URL地址):$_SERVER['HTTP_REFERER']
/*(可以做到防盗链作用,只有点击超链接(即<A href=...>)
打开的页面才有HTTP_REFERER环境变量, 其它如 window.open()、
window.location=...、window.showModelessDialog()
等打开的窗口都没有HTTP_REFERER 环境变量。)*/
//获取完整的url
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
#http://localhost/blog/testurl.php?id=5
#http://test./index.php/show/game/?aid=12
//获取包含端口号的完整url
echo 'http://'.$_SERVER['SERVER_NAME'].':'.$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
#http://localhost:80/blog/testurl.php?id=5
#http://test.:8080/index.php/show/game/?aid=12
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
//另外,获取当前设备是ios还是android的也比较常见
$userAgent = $_SERVER['HTTP_USER_AGENT'];
if(strpos($userAgent,"iPhone") || strpos($userAgent,"iPad") || strpos($userAgent,"iPod")){
echo '这是苹果公司的产品';
}else if(strpos($userAgent,"Android")){
echo '这是安卓系统产品';
} else{
echo 这是其它东西';
}
http://www.cnblogs.com/A-Song/archive/2011/12/14/2288215.html
注释1:
dirname():获取给定文件路径中的目录部分
basename():获取路径中的文件名部分,该函数与dirname()正好相反
#测试网址 E:\wamp\www\test.php
echo dirname(__FILE__); #E:\wamp\www
echo dirname(dirname(__FILE__)); #E:\wamp
echo basename(__FILE__); #test.php
注释2:获取文件扩展后缀名
$filename="123.jpg";
法一:$a=explode('.',$file);var_dump(array_pop($a)); #jpg
法二:echo substr($file, strrpos($file, '.')+1); #jpg
发三:echo substr(strrchr($file, '.'), 1); #jpg
//strrchr($a1,$a2) 函数查找字符串$a2在另一个字符串$a1中最后一次出现的位置,并返回从该位置到字符串结尾的所有字符。
注释3:
php $_SERVER中的SERVER_NAME 和HTTP_HOST的区别,详见:
http://it./post/3158/
在实际程序中,应尽量使用_SERVER[“HTTP_HOST”] ,比较保险和可靠。
|