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 session安全问题分析
Jun 24 PHP
php获取服务器信息的实现代码
Feb 04 PHP
基于curl数据采集之单页面采集函数get_html的使用
Apr 28 PHP
php mail to 配置详解
Jan 16 PHP
php开启openssl的方法
May 15 PHP
PHP提示Deprecated: mysql_connect(): The mysql extension is deprecated的解决方法
Aug 28 PHP
php获取url参数方法总结
Nov 13 PHP
php递归json类实例
Dec 02 PHP
PHP框架Laravel插件Pagination实现自定义分页
Apr 22 PHP
ThinkPHP开发--使用七牛云储存
Sep 14 PHP
PHP命令空间namespace及use的用法小结
Nov 27 PHP
PHP xpath提取网页数据内容代码解析
Jul 16 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
全国FM电台频率大全 - 18 湖南省
2020/03/11 无线电
ThinkPHP实现多数据库连接的解决方法
2014/07/01 PHP
php实现的日历程序
2015/06/18 PHP
HTTP状态代码以及定义(解释)
2007/02/02 Javascript
setTimeout内不支持jquery的选择器的解决方案
2015/04/28 Javascript
简单的js表格操作
2016/09/24 Javascript
BootStrap Fileinput初始化时的一些参数
2016/12/30 Javascript
浅谈Vuejs中nextTick()异步更新队列源码解析
2017/12/31 Javascript
vue里input根据value改变背景色的实例
2018/09/29 Javascript
koa2使用ejs和nunjucks作为模板引擎的使用
2018/11/27 Javascript
命令行批量截图Node脚本示例代码
2019/01/25 Javascript
Angular+ionic实现折叠展开效果的示例代码
2020/07/29 Javascript
JavaScript常用工具函数汇总(浏览器环境)
2020/09/17 Javascript
python模块restful使用方法实例
2013/12/10 Python
一个小示例告诉你Python语言的优雅之处
2014/07/04 Python
更改Python命令行交互提示符的方法
2015/01/14 Python
安装dbus-python的简要教程
2015/05/05 Python
浅析Python pandas模块输出每行中间省略号问题
2018/07/03 Python
对Python生成器、装饰器、递归的使用详解
2019/07/19 Python
python单向链表的基本实现与使用方法【定义、遍历、添加、删除、查找等】
2019/10/24 Python
Python any()函数的使用方法
2019/10/28 Python
Python如何基于Tesseract实现识别文字功能
2020/06/05 Python
python适合做数据挖掘吗
2020/06/16 Python
Python爬虫如何应对Cloudflare邮箱加密
2020/06/24 Python
Python存储读取HDF5文件代码解析
2020/11/25 Python
关于django python manage.py startapp 应用名出错异常原因解析
2020/12/15 Python
Html5画布_动力节点Java学院整理
2017/07/13 HTML / CSS
深入探究HTML5的History API
2015/07/09 HTML / CSS
英国家用电器折扣网站:Electrical Discount UK
2018/09/17 全球购物
linux下进程间通信的方式
2013/01/23 面试题
企业后勤岗位职责
2014/02/28 职场文书
学生安全责任书
2014/04/15 职场文书
先进教师事迹材料
2014/12/16 职场文书
干货:如何写好工作计划!
2019/05/17 职场文书
SQL Server代理:理解SQL代理错误日志处理方法
2021/06/30 SQL Server
Redis官方可视化工具RedisInsight安装使用教程
2022/04/19 Redis