thinkphp IP 获取和定位
![]() | ![]() | ![]() | ![]() |
| 【性价之王】 | 【线路之王】 | 【价格之王】 | 【配置之王】 |
| 【免费之王】 | 【香港首推】 | 【梯子之王】 | 【独服之王】 |

系统内置了 get_client_ip 方法用于获取客户端的 IP 地址,使用示例:
$ip = get_client_ip();上面的方法会返回一个客户端 IP 地址,但是如果要根据 IP 定位功能,则需要配合 IP 地址库文件(详见:http://www.kancloud.cn/manual/thinkphp/1885),网上下的 IP 地址库都不是很全面,因此我采用了使用第三方 API 获取 IP 定位信息的方法,这里选用的是百度 API 集市中的一个免费 IP 地址查询 API(详见:http://apistore.baidu.com/apiworks/servicedetail/114.html)。
具体实现方法:
function getIpInfo($ip){ $ch = curl_init(); $url = 'http://apis.baidu.com/apistore/iplookupservice/iplookup?ip='.$ip; $header = array( 'apikey:'.'你的 apikey', ); // 添加 apikey 到 header curl_setopt($ch, CURLOPT_HTTPHEADER, $header); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // 执行 HTTP 请求 curl_setopt($ch, CURLOPT_URL, $url); $res = curl_exec($ch); $arr = (array)json_decode($res,true); if($arr['errNum']==0){ $ip=$arr['retData']['ip']; $country=$arr['retData']['country']; $provice=$arr['retData']['provice']=='None'?'':$arr['retData']['provice']; $city=$arr['retData']['city']=='None'?'':$arr['retData']['city']; $district=$arr['retData']['district']=='None'?'':$arr['retData']['district']; $carrier=$arr['retData']['carrier']=='未知'?'':$arr['retData']['carrier']; eturn($country.' '.$provice.' '.$city.' '.$district.' '.$carrier.' '.$ip); } else{ return($arr['errMsg']); }在需要 ip 定位的地方调用这个方法,传入通过 get_client_ip 方法获取的 ip 即可,成功则返回详细 ip 定位信息,失败则返回错误代码,也可以根据 API 说明,进一步返回更友好的错误信息。
猜你可能想看的VPS
- CMIVPS 新年优惠全站 VPS 年付 7 折全球[VPS测评]
- 没有用过-MoeVM→139 元 月 上海 CN2 服务器 500G 流全球[VPS测评]
- onevps 推出日本专业奈飞(Netflix)VPS 首月半价 10T日本VPS[主机]
- 竟然有人要?-Hostigger→$15 年 1GB 内存 10GB S全球[VPS测评]
- AlphaVPS→€15 年 512MB 内存 128GB 空间 500虚拟空间(主机)
- DEFENDBULL 防御牛→1 元 月 免备 不限流量 抗 DDoS 全球[VPS测评]
- 嘟牛云国庆节特惠活动 多重好礼等你拿 现金 京东 E 卡 256G 固态独立服务器[U]
- 羊毛 ikoula 送 100 欧元 可以免费撸 2 年的 VPS 目前美国VPS[主机]
- [黑五]Starrydns 香港 日本 新加坡 VPS 年付 36 美元日本VPS[主机]
- Toxic-Host→€3.5 月 8GB 内存 80GB SSD 空间虚拟空间(主机)
- layer .tips 没有回调函数怎么办?全球[VPS测评]
- Hostodo 便宜美国 NVMe 硬盘 VPS,高 IO 读写,1G 美国VPS[主机]
- 疯狂猜成语 图猜成语过错两个字上面的人是红色的是什么成语?全球[VPS测评]
- RangCloud 双旦特惠 1G内存10G硬盘1m小带宽香港vps首单香港VPS[主机]
- neohost-乌克兰 1C1G30GB 1TB 3$ 月全球[VPS测评]
- BugetNode → 7G内存 70G储存 7T流量 荷兰高配鸡 月付全球[VPS测评]
- DMIT 美西CN2 GIA → 1C 1G RAM 10G SSD 1全球[VPS测评]
- WordPress去掉分类链接中category目录的两种方法全球[VPS测评]
- 企鹅小屋:香港ntt vps,大带宽直连,1核/1G/2T流量/半年15香港VPS[主机]
- 企鹅小屋:深港IPLC节点,0.25元/G流量,不用不花钱全球[VPS测评]
- 百看不厌的文案,抖音唯美文案。全球[VPS测评]
- 30个美容院抖音唯美文案,看到就直接拿去发吧全球[VPS测评]
- 香港云服务器对于建站有什么便捷的地方?香港VPS[主机]
- centos7如何查看firewall防火墙状态:开启/关闭/重启防火墙全球[VPS测评]
- 精编案例丨游戏行业转型升级迫在眉睫,云计算助力打造下一代游戏体验全球[VPS测评]
- 极客主机,美国高防/日本软银/新加坡双程CN2/香港VPS 折后39元/日本VPS[主机]
- Linux chown -R 指令介绍与使用全球[VPS测评]
- 外贸无界烟台市有多少跨境电商?烟台跨境电商开发平台,烟台跨境电商选品全球[VPS测评]
- gcorelabs:KVM主机€1.08/月起,香港/俄罗斯/亚太/欧美香港VPS[主机]
- 魔方云:香港原生IP vps/大带宽,月付79元起;美国洛杉矶CN2 G美国VPS[主机]
转载请注明原文地址:http://140.238.13.167:12355/read-202944.html











