在PHP的开发中我们经常会通过网址URL向另一个网页传递参数的问题。在这个过程中我们首先需要获取到当前页面的URL,然后将URL中各个参数的值保存到变量中。整个过程较为简单,主要涉及到$_SERVER的用法。
公司主营业务:成都网站制作、成都网站设计、外贸营销网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出华容免费做网站回馈大家。
1、$_server['http_host'],作用:获取网址域名,如(,这是波波的一个博客,暂且做例子吧)。
2、$_SERVER["PHP_SELF"],作用:获取网页地址,如(/code/445.html)。
3、$_SERVER["QUERY_STRING"],作用:获取网址URL参数,待会我们会在实例中用到。
4、$_SERVER["HTTP_REFERER"],作用:获取用户的代理。
通过上述说明我们基本上已经了解了$_server的常用方法,下面我们首先通过PHP代码获取当前网页网址中传递的参数。对参数进行解析并输出到屏幕上。请看源代码:
?php
$para= urldecode($_SERVER["QUERY_STRING"]);//避免网址参数中文乱码
//举例 url=";b=bbbbc=cccc"
//$para = 'a=aaaab=bbbbc=cccc';
$cont = get_data($para);
echo $cont['a']; //屏幕打印aaaa
function get_data($str){
$data = array();
$parameter = explode('',end(explode('?',$str)));
foreach($parameter as $val){
$tmp = explode('=',$val);
$data[$tmp[0]] = $tmp[1];
}
return $data;
}
?
parse_url函数
我们先来了解一下parse_url函数,官方解决
说明
mixed
parse_url
(
string
$url
[,
int
$component
=
-1
]
)
本函数解析一个
URL
并返回一个关联数组,包含在
URL
中出现的各种组成部分。
本函数不是用来验证给定
URL
的合法性的,只是将其分解为下面列出的部分。不完整的
URL
也被接受,
parse_url()
会尝试尽量正确地将其解析。
要解析的
URL。无效字符将使用
_
来替换。
实例
代码如下
$url
=
"";
$parts
=
parse_url($url);
print_r($parts);
array
(
[scheme]
=
http
[host]
=
[path]
=
/welcome/
)
也可以自己去写一个算法!如下
代码如下
function
getParams()
{
$url
=
'/index.php?_p=index_a=showx=12y=23';
$refer_url
=
parse_url($url);
$params
=
$refer_url['query'];
$arr
=
array();
if(!empty($params))
{
$paramsArr
=
explode('',$params);
foreach($paramsArr
as
$k=$v)
{
$a
=
explode('=',$v);
$arr[$a[0]]
=
$a[1];
}
}
return
$arr;
}
调用方法
代码如下
$arr
=
getParams();
print_r($arr);
结果
结果:
Array
(
[_p]
=
index
[_a]
=
show
[x]
=
12
[y]
=
23
)
//url中传递的参数,get形式
$userid = @$_GET['userid'];
//你也可以打印出所有的Get参数, 可以更明白其中的奥妙
print_r($_GET);
//如果是表单/post提交,则用$_POST , 用法和$_GET类似
1、在当前网页echo出变量$_SERVER['HTTP_HOST']即可获取域名或主机地址。
2、在当前网页echo出变量$_SERVER['PHP_SELF']即可获取网页地址。
3、在当前网页echo出变量$_SERVER["QUERY_STRING"]即可获取网址参数。
4、在当前网页echo出变量$_SERVER['HTTP_REFERER']即可获取用户代理。
5、在当前网页echo出变量$_SERVER['HTTP_HOST']点上$_SERVER['REQUEST_URI']即可获取完整的url,后面带参数自己点上即可。
6、也是点上,用个变量保存好输出。
php有系统自带的函数是可以直接获取到当前url的,下面小编就过来简单的分享一下吧,希望能帮到大家的忙;
操作方法
代码:
?php
//php获取当前url方法
$url = "http://".$_SERVER ['HTTP_HOST'].$_SERVER['PHP_SELF'];
echo $url;
?
运行结果