php REMOTE_ADDR之获取访客IP的代码


Posted in PHP onApril 22, 2008

<?php
$iipp=$_SERVER["REMOTE_ADDR"];
echo $iipp;
?>[/code][code]<?php
$user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];
$user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"];

echo $user_IP;
?>

<?php
function get_real_ip(){
$ip=false;
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$ip = $_SERVER["HTTP_CLIENT_IP"];
}
if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
if ($ip) { array_unshift($ips, $ip); $ip = FALSE; }
for ($i = 0; $i < count($ips); $i++) {
if (!eregi ("^(10|172.16|192.168).", $ips[$i])) {
$ip = $ips[$i];
break;
}
}
}
return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);
}

echo get_real_ip();
?>

<?php
if ($HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"])
{
$ip = $HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"];
}
elseif ($HTTP_SERVER_VARS["HTTP_CLIENT_IP"])
{
$ip = $HTTP_SERVER_VARS["HTTP_CLIENT_IP"];
}
elseif ($HTTP_SERVER_VARS["REMOTE_ADDR"])
{
$ip = $HTTP_SERVER_VARS["REMOTE_ADDR"];
}
elseif (getenv("HTTP_X_FORWARDED_FOR"))
{
$ip = getenv("HTTP_X_FORWARDED_FOR");
}
elseif (getenv("HTTP_CLIENT_IP"))
{
$ip = getenv("HTTP_CLIENT_IP");
}
elseif (getenv("REMOTE_ADDR"))
{
$ip = getenv("REMOTE_ADDR");
}
else
{
$ip = "Unknown";
}
echo "你的IP:".$ip ;
?>

<?php
if(getenv('HTTP_CLIENT_IP')) {
$onlineip = getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR')) {
$onlineip = getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR')) {
$onlineip = getenv('REMOTE_ADDR');
} else {
$onlineip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
}
echo $onlineip;
?>

PHP 相关文章推荐
php项目打包方法
Feb 18 PHP
用PHP调用Oracle存储过程的方法
Sep 12 PHP
PHP 图片上传实现代码 带详细注释
Apr 29 PHP
php正则表达匹配中文问题分析小结
Mar 25 PHP
PHPMailer使用教程(PHPMailer发送邮件实例分析)
Dec 06 PHP
浅谈php serialize()与unserialize()的用法
Jun 05 PHP
php图像处理函数大全(推荐收藏)
Jul 11 PHP
json的键名为数字时的调用方式(示例代码)
Nov 15 PHP
详解PHP数组赋值方法
Nov 07 PHP
PHP版微信小店接口开发实例
Nov 12 PHP
laravel实现批量更新多条记录的方法示例
Oct 22 PHP
PHP数组常用函数实例小结
Aug 20 PHP
Gregarius中文日期格式问题解决办法
Apr 22 #PHP
PHP下用rmdir实现删除目录的三种方法小结
Apr 20 #PHP
Mysql中limit的用法方法详解与注意事项
Apr 19 #PHP
php采集速度探究总结(原创)
Apr 18 #PHP
Snoopy类使用小例子
Apr 15 #PHP
mysql 中InnoDB和MyISAM的区别分析小结
Apr 15 #PHP
snoopy PHP版的网络客户端提供本地下载
Apr 15 #PHP
You might like
Laravel框架中扩展函数、扩展自定义类的方法
2014/09/04 PHP
php实现读取和写入tab分割的文件
2015/06/01 PHP
laravel中的错误与日志用法详解
2016/07/26 PHP
PHP+Ajax实现上传文件进度条动态显示进度功能
2018/06/04 PHP
在Javascript里访问SharePoint列表数据的实现方法
2011/05/22 Javascript
jquery移除button的inline onclick事件(已测试及兼容浏览器)
2013/01/25 Javascript
js清空form表单中的内容示例
2014/05/20 Javascript
JavaScript代码判断点击第几个按钮
2015/12/13 Javascript
BootStrap按钮标签及基本样式
2016/11/23 Javascript
vue脚手架搭建项目的兼容性配置详解
2018/07/17 Javascript
vue-cli项目配置多环境的详细操作过程
2018/10/30 Javascript
layui table 表格模板按钮的实例代码
2019/09/21 Javascript
JsonProperty 的使用方法详解
2019/10/11 Javascript
Vue实现星级评价效果实例详解
2019/12/30 Javascript
vue实现的多页面项目如何优化打包的步骤详解
2020/07/19 Javascript
vue 重塑数组之修改数组指定index的值操作
2020/08/09 Javascript
[15:39]教你分分钟做大人:龙骑士
2014/10/30 DOTA
[01:58]最残酷竞争 2016国际邀请赛中国区预选赛积分循环赛回顾
2016/06/28 DOTA
python批量修改文件后缀示例代码分享
2013/12/24 Python
Python生成pdf文件的方法
2014/08/04 Python
Python中的自定义函数学习笔记
2014/09/23 Python
Ruby使用eventmachine为HTTP服务器添加文件下载功能
2016/04/20 Python
Python中的__slots__示例详解
2017/07/06 Python
关于python写入文件自动换行的问题
2018/06/23 Python
浅谈Python 列表字典赋值的陷阱
2019/01/20 Python
python程序运行进程、使用时间、剩余时间显示功能的实现代码
2019/07/11 Python
CSS3 animation实现简易幻灯片轮播特效
2016/09/27 HTML / CSS
Speedo速比涛德国官方网站:世界领先的泳装品牌
2019/08/26 全球购物
澳大利亚顶级美发和美容贸易超市:glamaCo
2020/01/19 全球购物
党员干部廉洁自律承诺书
2015/04/28 职场文书
2015年全国保险公众宣传日活动方案
2015/05/06 职场文书
工作收入证明模板
2015/06/12 职场文书
经典祝酒词大全
2015/08/12 职场文书
如何利用Matlab制作一款真正的拼图小游戏
2021/05/11 Python
恶魔之树最顶端的三颗果实 震震果实上榜,第一可以制造岩浆
2022/03/18 日漫
MySQL数据库如何查看表占用空间大小
2022/06/10 MySQL