国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

PHP獲取瀏覽器信息類和客戶端地理位置的2個(gè)方法

2020-03-22 18:25:03
字體:
供稿:網(wǎng)友
一、獲取瀏覽器信息,獲取訪客操作系統(tǒng):windows、mac、linux、unix、bsd、other,以及訪客ip地址等信息的PHP類
復(fù)制代碼 代碼如下:
?php
/**
* 獲取訪客信息的類:語言、瀏覽器、操作系統(tǒng)、ip、地理位置、isp。
* 使用:
* $obj = new guest_info;
* $obj- getlang(); //獲取訪客語言:簡體中文、繁體中文、english。
* $obj- getbrowser(); //獲取訪客瀏覽器:msie、firefox、chrome、safari、opera、other。
* $obj- getos(); //獲取訪客操作系統(tǒng):windows、mac、linux、unix、bsd、other。
* $obj- getip(); //獲取訪客ip地址。
* $obj- getadd(); //獲取訪客地理位置,使用 baidu 隱藏接口。
* $obj- getisp(); //獲取訪客isp,使用 baidu 隱藏接口。
*/
html' target='_blank'>class guest_info{
function getlang() {
$lang = substr($_server['http_accept_language'], 0, 4);
//使用substr()截取字符串,從 0 位開始,截取4個(gè)字符
if (preg_match('/zh-c/i',$lang)) {
//preg_match()正則表達(dá)式匹配函數(shù)
$lang = '簡體中文';
}
elseif (preg_match('/zh/i',$lang)) {
$lang = '繁體中文';
}
else {
$lang = 'english';
}
return $lang;
}
function getbrowser() {
$browser = $_server['http_user_agent'];
if (preg_match('/msie/i',$browser)) {
$browser = 'msie';
}
elseif (preg_match('/firefox/i',$browser)) {
$browser = 'firefox';
}
elseif (preg_match('/chrome/i',$browser)) {
$browser = 'chrome';
}
elseif (preg_match('/safari/i',$browser)) {
$browser = 'safari';
}
elseif (preg_match('/opera/i',$browser)) {
$browser = 'opera';
}
else {
$browser = 'other';
}
return $browser;
}
function getos() {
$os = $_server['http_user_agent'];
if (preg_match('/win/i',$os)) {
$os = 'windows';
}
elseif (preg_match('/mac/i',$os)) {
$os = 'mac';
}
elseif (preg_match('/linux/i',$os)) {
$os = 'linux';
}
elseif (preg_match('/unix/i',$os)) {
$os = 'unix';
}
elseif (preg_match('/bsd/i',$os)) {
$os = 'bsd';
}
else {
$os = 'other';
}
return $os;
}
function getip() {
if (!empty($_server['http_client_ip'])) {
//如果變量是非空或非零的值,則 empty()返回 false。
$ip = explode(',',$_server['http_client_ip']);
}
elseif (!empty($_server['http_x_forwarded_for'])) {
$ip = explode(',',$_server['http_x_forwarded_for']);
}
elseif (!empty($_server['remote_addr'])) {
$ip = explode(',',$_server['remote_addr']);
}
else {
$ip[0] = 'none';
}
return $ip[0];
}
}

$obj = new guest_info;
echo $obj- getlang(); //獲取訪客語言:簡體中文、繁體中文、english。
echo $obj- getbrowser(); //獲取訪客瀏覽器:msie、firefox、chrome、safari、opera、other。
echo $obj- getos(); //獲取訪客操作系統(tǒng):windows、mac、linux、unix、bsd、other。
echo $obj- getip(); //獲取訪客ip地址。
?

二、php利用騰訊ip分享計(jì)劃獲取ip地理位置復(fù)制代碼 代碼如下:
?php
function getiploc_qq($queryip){
$url = 'http://ip.qq.com/cgi-bin/searchip?searchip1='.$queryip;
$ch = curl_init($url);
curl_setopt($ch,curlopt_encoding ,'gb2312');
curl_setopt($ch, curlopt_timeout, 10);
curl_setopt($ch, curlopt_returntransfer, true) ; // 獲取數(shù)據(jù)返回
$result = curl_exec($ch);
$result = mb_convert_encoding($result, "utf-8", "gb2312"); // 編碼轉(zhuǎn)換,否則亂碼
curl_close($ch);
preg_match("@ span (.*) /span /p @iu",$result,$iparray);
$loc = $iparray[1];
return $loc;
}
//使用
echo getiploc_qq("183.37.209.57"); //即可得到ip地址所在的地址位置。
?
三、php利用新浪ip查詢接口獲取ip地理位置復(fù)制代碼 代碼如下:
?php
function getiploc_sina($queryip){
$url = 'http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip='.$queryip;
$ch = curl_init($url);
curl_setopt($ch,curlopt_encoding ,'utf8');
curl_setopt($ch, curlopt_timeout, 5);
curl_setopt($ch, curlopt_returntransfer, true) ; // 獲取數(shù)據(jù)返回
$location = curl_exec($ch);
$location = json_decode($location);
curl_close($ch);
$loc = "";
if($location===false) return "";
if (empty($location- desc)) {
$loc = $location- province.$location- city.$location- district.$location-
}else{ $loc = $location- desc;
}
return $loc;
}
echo getiploc_sina("183.37.209.57");
?
PHP教程

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 岑溪市| 永靖县| 天等县| 顺昌县| 平罗县| 竹北市| 台山市| 行唐县| 新和县| 东方市| 岳阳县| 金川县| 柘城县| 秦安县| 永嘉县| 瑞昌市| 新密市| 利辛县| 闵行区| 湟中县| 衡阳市| 山西省| 开平市| 陕西省| 陈巴尔虎旗| 苏尼特右旗| 深水埗区| 宜丰县| 北票市| 商水县| 杭锦后旗| 昌邑市| 饶河县| 德惠市| 梁平县| 开封县| 光山县| 罗江县| 西安市| 宾阳县| 合川市|