本文目录一览:
- 1、如何通过php获取提交页面的URL?
- 2、php中怎么获取访问当前页面电脑的IP地址
- 3、怎么取PHP跳转前页的地址
- 4、php如何获取调用页面的来源地址
- 5、PHP获取网页地址的问题
- 6、PHP怎么取当前页完全地址
如何通过php获取提交页面的URL?
在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
functionget_data($str){
$data=array();
$parameter=explode('',end(explode('?',$str)));
foreach($parameteras$val){
$tmp=explode('=',$val);
$data[$tmp[0]]=$tmp[1];
}
return$data;
}
?
php中怎么获取访问当前页面电脑的IP地址
本文所述php实例可以完成获取局域网所有用户的电脑IP和主机名、及mac地址的功能,对于php程序设计人员有一定的参考借鉴价值。完整代码如下:
?php
$bIp = gethostbyname($_ENV['COMPUTERNAME']); //获取本机的局域网IP
echo "本机IP:",$bIp,"\n";
echo "本机主机名:",gethostbyaddr($bIp),"\n\n\n"; //gethostbyaddr 函数可以根据局域网IP获取主机名
//默认网关IP
list($ipd1,$ipd2,$ipd3) = explode('.',$bIp);
$mask = $ipd1 . "." . $ipd2 . "." . $ipd3 ;
exec('arp -a',$aIp); //获取局域网中的其他IP
foreach( $aIp as $ipv) {
if(strpos($ipv,'接口') !== false) {//一下显示的IP是否是当前局域网中的 而不是其他的类型 可以在cmd下试一下命令
$bool = false;
preg_match('/(?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))/',$ipv,$arr);
if(strcmp($arr[0],$bIp) == 0) {
$bool = true;
}
} else {
if($bool) {
$str = preg_replace('/\s+/', '|', $ipv);
$sArr = explode('|',$str);
if($sArr[1] == 'Internet' || empty($sArr[1])) {
continue;
}
//去除默认网关
if(strcmp($mask . ".1", $sArr[1]) == 0) {
continue;
}
//去除同网关下255的IP
if(strcmp($mask . ".255", $sArr[1]) == 0) {
continue;
}
//去除组播IP
list($cIp) = explode('.', $sArr[1]);
if($cIp = 224 $cIp = 239) {
continue;
}
echo "IP地址:|",$sArr[1],"|\n";
echo "MAC地址:",$sArr[2],"\n";
echo "主机名:",gethostbyaddr($sArr[1]),"\n";
echo "\n\n";
}
}
}
怎么取PHP跳转前页的地址
1.常规方法:可以通过 $_SERVER['HTTP_REFERER'] 获取,不过http 请求头中可能不带referer这个属性(具体取决于浏览器对HTTP协议的执行规范上)。如果请求头中不带referer属性,那么在$_SERVER全局数组中就获取不到HTTP_REFERER。所以说这个方法不靠谱!!!
2.靠谱方法:在服务端记录每次请求的URL($_SERVER["HTTP_HOST"].$_SERVER["PHP_SELF"]."?".$_SERVER["QUERY_STRING"]),具体存储位置可以放到session文件(或者数据库),比如第一次请求的页面为Page1,这时候就把Page1完整地址(可能有QUERY_STRING)存储起来,第二次请求新页面Page2的时候就可以获取到Page1了,然后更新lastPage的值为Page2,方便下次再获取上一页地址。以此类推,就可以实现你想要的的功能了。
php如何获取调用页面的来源地址
使用PHP编写程序的时候,想要获取当前页面的URL,可以了用函数来实现;
参考方法如下:
php
// 说明:获取完整URL
function curPageURL()
{
$pageURL = 'http';
if ($_SERVER["HTTPS"] == "on")
{
$pageURL .= "s";
}
$pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "80")
{
$pageURL .= $_SERVER["SERVER_NAME"] . ":" . $_SERVER["SERVER_PORT"] . $_SERVER["REQUEST_URI"];
}
else
{
$pageURL .= $_SERVER["SERVER_NAME"] . $_SERVER["REQUEST_URI"];
}
return $pageURL;
}
?
PHP获取网页地址的问题
如果是直接获取的话用$_SERVER['HTTP_HOST'];获得当前服务器hostname
以图片调用的话,可通过$_SERVER['HTTP_REFERER']获得父页面的URL
然后用正则将host部分提取出来
$url = $_SERVER['HTTP_REFERER'];
preg_match("/http[s]?:\/\/(.*?)([:\/]|$)/",$url,$host);
$host = $host[1];
PHP怎么取当前页完全地址
你说的是php文件的地址 还是 用浏览器浏览页面的地址。
php文件的地址可以用__FILE__魔术常量来获取。
获取网页地址:$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']