#测试网址: 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
目录的相关操作
----------------------------------------------
2.1 路经的方式:
windows系统:D:/a/b/c.php 或 D:\a\b\c.php
linux/unix系统: /a/b/c.php
为统一建议使用"/"作为目录之间的分割符
2.2 路径的相关函数(4个):
1. basename("url地址"[,去除部分]) -- 获取指定url的文件名
2. dirname("url地址") -- 获取地址的路径值
示例:
$url = "http://www.baidu.com/a/b/c.php";
echo $url."
"; //http://www.baidu.com/a/b/c.php
echo basename($url)."
"; //c.php
echo basename($url,".php")."
"; //c (去掉".php")
echo dirname($url)."
"; //http://www.baidu.com/a/b
*3. pathinfo(文件路径[,需要的下标])--获取文件路径的详细信息,返回一个关联数组
结果:下标:dirname 路径名
basename 文件名
extension 后缀名
filename 文件名(去掉后缀的)
示例:
$url = "http://www.baidu.com/a/b/c.php";
*echo pathinfo($url,PATHINFO_DIRNAME); //http://www.baidu.com/a/b
*echo pathinfo($url,PATHINFO_EXTENSION); //php 后缀名
*echo pathinfo($url,PATHINFO_BASENAME); //c.php 文件名
$a = pathinfo($url);
$a结果:
array(4) {
["dirname"]=>
string(24) "http://www.baidu.com/a/b"
["basename"]=>
string(5) "c.php"
["extension"]=>
string(3) "php"
["filename"]=>
string(1) "c"
}
4. realpath()--获取指定文件的绝对路径
示例: echo realpath("1.php"); //D:\AppServ\www\lamp45\09_file_dir\1.php
//获取域名或主机地址
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
目录的相关操作
----------------------------------------------
2.1 路经的方式:
windows系统:D:/a/b/c.php 或 D:\a\b\c.php
linux/unix系统: /a/b/c.php
为统一建议使用"/"作为目录之间的分割符
2.2 路径的相关函数(4个):
1. basename("url地址"[,去除部分]) -- 获取指定url的文件名
2. dirname("url地址") -- 获取地址的路径值
示例:
$url = "http://www.baidu.com/a/b/c.php";
echo $url."
"; //http://www.baidu.com/a/b/c.php
echo basename($url)."
"; //c.php
echo basename($url,".php")."
"; //c (去掉".php")
echo dirname($url)."
"; //http://www.baidu.com/a/b
*3. pathinfo(文件路径[,需要的下标])--获取文件路径的详细信息,返回一个关联数组
结果:下标:dirname 路径名
basename 文件名
extension 后缀名
filename 文件名(去掉后缀的)
示例:
$url = "http://www.baidu.com/a/b/c.php";
*echo pathinfo($url,PATHINFO_DIRNAME); //http://www.baidu.com/a/b
*echo pathinfo($url,PATHINFO_EXTENSION); //php 后缀名
*echo pathinfo($url,PATHINFO_BASENAME); //c.php 文件名
$a = pathinfo($url);
$a结果:
array(4) {
["dirname"]=>
string(24) "http://www.baidu.com/a/b"
["basename"]=>
string(5) "c.php"
["extension"]=>
string(3) "php"
["filename"]=>
string(1) "c"
}
4. realpath()--获取指定文件的绝对路径
示例: echo realpath("1.php"); //D:\AppServ\www\lamp45\09_file_dir\1.php