|
本文介绍下,用php获取网站的地理位置,以及操作系统相关信息的一例代码,有需要的朋友参考下。
1,php代码部分
<?php
/**
* 获取网站地理位置
* 获取网站操作系统信息
* edit by bbs.it-home.org
*/
error_reporting(E_ERROR);
header(“content-Type: text/html; charset=gb2312″);
set_time_limit(120);
$host = isset($_POST['url']) ? chop(str_replace(‘http://’,”,$_POST['url'])) : ‘ www.2cto.com ’;
$port = isset($_POST['duankou']) ? chop($_POST['duankou']) : ’80′;
$num = 10;
function microtime_float()
{
list($usec, $sec) = explode(” “, microtime());
return ((float)$usec + (float)$sec);
}
function ip138($url)
{
$host = ‘www.ip138.com’;
$fp = @fsockopen($host,80,&$errno,&$errstr,3);
$get = “GET /ips.asp?ip=”.$url.” HTTP/1.1\r\nHost:”.$host.”\r\nConnection: Close\r\n\r\n”;
@fputs($fp,$get);
$data = ”;
while ($fp && !feof($fp))
$data .= fread($fp, 1024);
@fclose($fp);
$s1 = ‘\<table width\=\”80\%\” border\=\”0\” align\=\”center”\ cellpadding\=\”0\” cellspacing\=\”0\”\>’;
$s2 = ‘\<\/table\>’;
$tmp = array();
preg_match_all(“/”.$s1.”([^~]*?)”.$s2.”/i”,$data,$tmp);
$tmp1 = array();
preg_match_all(“/\<li\>([^~]*?)\<\/li\>/i”,$tmp[0][0],$tmp1);
return $tmp1[0][0].$tmp1[0][1].$tmp1[0][2];
}
function getsoft($host,$port)
{
$fp = @fsockopen($host,$port,&$errno,&$errstr,3);
if(!$fp) return ‘unknown’;
$get = “GET / HTTP/1.1\r\nHost:”.$host.”\r\nConnection: Close\r\n\r\n”;
@fputs($fp,$get);
$data = ”;
while ($fp && !feof($fp))
$data .= fread($fp, 1024);
@fclose($fp);
$array = explode(“\n”,$data);
$k = 2;
for($i = 0;$i < 20;$i++)
{
if(stristr($array[$i],’Server’)){$k = $i; break;}
}
if(!stristr($array[$k],’Server’)) return ‘unknown’;
else return str_replace(‘Server’,'服务器软件’,$array[$k]);
}
function ping($host,$port)
{
$time_start = microtime_float();
$ip = gethostbyname($host);
$fp = @fsockopen($host,$port,&$errno,&$errstr,1);
if(!$fp) return ‘Request timed out.<br />’.”\r\n”;
$get = “GET / HTTP/1.1\r\nHost:”.$host.”\r\nConnection: Close\r\n\r\n”;
@fputs($fp,$get);
@fclose($fp);
$time_end = microtime_float();
$time = $time_end – $time_start;
$time = ceil($time * 1000);
return ‘Reply from ‘.$ip.’: time=’.$time.’ms<br />’;
}
if(isset($_POST['url']) && isset($_POST['duankou']))
{
echo ip138($host).’<br /><br />’;
echo ‘<font color=”#FF0000″>’.getsoft($host,$port).’</font><br /><br />’;
echo ‘Pinging ‘.$host.’ ['.gethostbyname($host).'] with Port:’.$port.’ of data:<br /><br />’.”\r\n”;
ob_flush();
flush();
for($i = 0;$i < $num;$i++)
{
echo ping($host,$port);
ob_flush();
flush();
sleep(1);
}
}
?>登录后复制 2,页面内容部分
v18.5.30投票评选网站管理系统
查看详情
宁志投票评选网站管理系统一套专为活动投票专题建站首选的信息网站管理系统,风格宽频页面十分大方,宁志网站管理系统是国内知名建站软件,它由技术人员开发好了的一种现成建站软件,主要为全国各地方自助建站提供方便。 特点:安全、稳定、美观、实用、易操作。NZCMS开发结构采用ASP+ACCESS/MSSQL开发,运行高效的运行性能以及良好的可维护性,在近几年来吸引了众多国内机关单位的使用与推动:由于有众多支
119
<form method=”POST”> 域名/IP:<input type=”text” name=”url” value=”<?php echo $host;?>” size=”50″> 端口:<input type=”text” name=”duankou” value=”<?php echo $port;?>” size=”10″> <input type=”submit” value=”ping”> </form> 登录后复制 >>> 您可能感兴趣的文章: php新浪接口查询ip地理位置 php腾讯ip分享计划获取IP地理位置 php通过IP获取地理位置 PHP通过IP获取地理位置的代码 php通过IP获取地理位置的实例参考 php 获取用户真实IP与地理位置(淘宝IP接口)的实现代码 php根据IP地址获取当前地理位置接口 |
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号