THinkPHP获取客户端IP与IP地址查询的方法


Posted in PHP onNovember 14, 2016

本文实例讲述了THinkPHP获取客户端IP与IP地址查询的方法。分享给大家供大家参考,具体如下:

TP 中获取客户端IP地址的系统公共函数是:function get_client_ip()。返回值就是IP地址。

查询IP地址所在国家与地区的类文件是IpLocation.class.php,位于ThinkPHP\Lib\ORG\Net目录下。类名是IpLocation,方法是

public function getlocation($ip='');

省略时查询客户端IP所在地址。返回的是一个数组。没有查到的话返回值为空;查到的话,数组有值为:

$location['ip'];
$location['country'];
$location['area'];

查询客户端IP及其对应地区的具体应用过程就是:

import('ORG.Net.IpLocation');
$ip=new Iplocation();//新建一个IP查询对象
$location=$ip->getlocation();//省略时表示查询客户端IP.$location可以直接输出使用,键名如上。

要是想查询特定IP或域名所在地区,过程是:

import('ORG.Net.IpLocation');
$ip=new Iplocation();//新建一个IP查询对象
$ipname='202.38.68.68′;//或者可以用域名,如$ipname='www.64hi.com';
$location=$ip->getlocation($ipname);//$location可以直接输出使用,键名如上。

要是只要查询客户端IP地址,可以直接用系统函数,如:

$ip= $ip->get_client_ip();
//很多网站都是 $ip= get_client_ip(); 其实都是错误的,大家要注意了。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP的开发框架的现状和展望
Mar 16 PHP
dede全站URL静态化改造[070414更正]
Apr 17 PHP
php curl 伪造IP来源的实例代码
Nov 01 PHP
php中Y2K38的漏洞解决方法实例分析
Sep 22 PHP
Laravel模板引擎Blade中section的一些标签的区别介绍
Feb 10 PHP
php计算函数执行时间的方法
Mar 20 PHP
Smarty高级应用之缓存操作技巧分析
May 14 PHP
CI框架常用方法小结
May 17 PHP
PHP内置加密函数详解
Nov 20 PHP
Yii2 中实现单点登录的方法
Mar 09 PHP
php5.x禁用eval的操作方法
Oct 19 PHP
PHP SESSION机制的理解与实例
Mar 22 PHP
php实现等比例不失真缩放上传图片的方法
Nov 14 #PHP
PHP互换两个变量值的方法(不用第三变量)
Nov 14 #PHP
PHP输出图像imagegif、imagejpeg与imagepng函数用法分析
Nov 14 #PHP
PHP载入图像imagecreatefrom_gif_jpeg_png系列函数用法分析
Nov 14 #PHP
php中10个不同等级压缩优化图片操作示例
Nov 14 #PHP
Symfony2创建基于域名的路由相关示例
Nov 14 #PHP
thinkPHP框架对接支付宝即时到账接口回调操作示例
Nov 14 #PHP
You might like
老生常谈PHP 文件写入和读取(必看篇)
2017/05/22 PHP
php设计模式之策略模式实例分析【星际争霸游戏案例】
2020/03/26 PHP
jquery 多级下拉菜单核心代码
2010/05/21 Javascript
JS修改css样式style浅谈
2013/05/06 Javascript
基于jQuery+Cookie实现的防止刷新的在线考试倒计时
2015/06/19 Javascript
JavaScript中字符串拼接的基本方法
2015/07/07 Javascript
js一维数组、多维数组和对象的混合使用方法
2016/04/03 Javascript
Jquery Easyui搜索框组件SearchBox使用详解(19)
2016/12/17 Javascript
基于MVC方式实现三级联动(JavaScript)
2017/01/23 Javascript
JS中showModalDialog关闭子窗口刷新主窗口用法详解
2017/03/25 Javascript
详解vue项目优化之按需加载组件-使用webpack require.ensure
2017/06/13 Javascript
Vue-router 类似Vuex实现组件化开发的示例
2017/09/15 Javascript
ES6中新增的Object.assign()方法详解
2017/09/22 Javascript
Vue之Vue.set动态新增对象属性方法
2018/02/23 Javascript
深入浅析JS中的严格模式
2018/06/04 Javascript
一次Webpack配置文件的分离实战记录
2018/11/30 Javascript
python获取网页状态码示例
2014/03/30 Python
Python ORM框架SQLAlchemy学习笔记之关系映射实例
2014/06/10 Python
python 把数据 json格式输出的实例代码
2016/10/31 Python
python利用paramiko连接远程服务器执行命令的方法
2017/10/16 Python
使用python实现BLAST
2018/02/12 Python
kaggle+mnist实现手写字体识别
2018/07/26 Python
pyqt5、qtdesigner安装和环境设置教程
2019/09/25 Python
python+selenium+Chrome options参数的使用
2020/03/18 Python
python数据分析工具之 matplotlib详解
2020/04/09 Python
python 使用多线程创建一个Buffer缓存器的实现思路
2020/07/02 Python
Python常用模块函数代码汇总解析
2020/08/31 Python
Python web框架(django,flask)实现mysql数据库读写分离的示例
2020/11/18 Python
10个很棒的 CSS3 开发工具 推荐
2011/05/16 HTML / CSS
惠普加拿大在线商店:HP加拿大
2017/09/15 全球购物
巴塞罗那观光通票:Barcelona Pass
2019/10/30 全球购物
房地产项目建议书
2014/03/12 职场文书
python基于tkinter制作下班倒计时工具
2021/04/28 Python
python析构函数用法及注意事项
2021/06/22 Python
光之国的四大叛徒:第一贝利亚导致宇宙毁灭,赛文奥特曼在榜
2022/03/18 日漫
Win11 Beta 22621.601 和 22622.601今日发布 KB5017384修复内容汇总
2022/09/23 数码科技