php实现图形显示Ip地址的代码及注释


Posted in PHP onJanuary 20, 2014

使用图形显示Ip,文件 sunip.php

<?php 
header("Content-type: image/gif"); 
$im = imagecreate(130,15); 
$background_color = ImageColorAllocate ($im, 255, 255, 255); 
unset($ip); 
if($_SERVER['HTTP_CLIENT_IP']){ 
$ip=$_SERVER['HTTP_CLIENT_IP']; 
} else if($_SERVER['HTTP_X_FORWARDED_FOR']){ 
$ip=$_SERVER['HTTP_X_FORWARDED_FOR']; 
} else{ 
$ip=$_SERVER['REMOTE_ADDR']; 
} // 3water.com
$col = imagecolorallocate($im, 0, 51, 102); 
imagestring($im, 3, 5, 1, $ip , $col); 
imagegif($im); 
imagedestroy($im); 
?>

1. <?php

2. header("Content-type: image/gif");
第二行 声明浏览器标头 输出为GIF图形
3. $im = imagecreate(130,15);
建立一个图形 imagecreate(130,15)括号内130,15分别代表宽度和高度
4. $background_color = ImageColorAllocate ($im, 255, 255, 255);
设置背景颜色 imagecolorallocate 为一幅图片分配颜色 ($im, 255, 255, 255)im代表前面提到的新建图形 后面的3个255则代表颜色表ffffff的10进制字符
5. unset($ip);
无用
6.if($_SERVER['HTTP_CLIENT_IP']){
$ip=$_SERVER['HTTP_CLIENT_IP'];
} else if($_SERVER['HTTP_X_FORWARDED_FOR']){
$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
} else{
$ip=$_SERVER['REMOTE_ADDR'];
}
如果$_SERVER['HTTP_CLIENT_IP']可以使用则使用$_SERVER['HTTP_CLIENT_IP']下面类似 为判断 此段是为了兼容多种服务器设置
7. $col = imagecolorallocate($im, 0, 51, 102);
定义文字颜色
8. imagestring($im, 3, 5, 1, $ip , $col);
将获取到的IP画到新建的画布上 imagestring($im, 3, 5, 1, $ip , $col); 分别代表imagestring(图形表示,字符尺寸1-5,X坐标,Y坐标,输出的IP,颜色)
9. imagegif($im);
输出GIF图形
10. imagedestroy($im);
释放内存
11. ?>
程序结束

PHP 相关文章推荐
不要轻信 PHP_SELF的安全问题
Sep 05 PHP
php调用MySQL存储过程的方法集合(推荐)
Jul 03 PHP
PHP生成压缩文件实例
Feb 07 PHP
php实现模拟登陆方正教务系统抓取课表
May 19 PHP
实例讲解如何在PHP的Yii框架中进行错误和异常处理
Mar 17 PHP
如何打开php的gd2库
Feb 09 PHP
PHP简单装饰器模式实现与用法示例
Jun 22 PHP
Laravel 5.4.36中session没有保存成功问题的解决
Feb 19 PHP
php微信公众号开发之现金红包
Apr 16 PHP
php简单检测404页面的方法示例
Aug 23 PHP
Laravel实现通过blade模板引擎渲染视图
Oct 25 PHP
layui数据表格自定义每页条数limit设置
Oct 26 PHP
php判断手机访问还是电脑访问示例分享
Jan 20 #PHP
利用中国天气预报接口实现简单天气预报
Jan 20 #PHP
php日历制作代码分享
Jan 20 #PHP
php使用qr生成二维码的示例分享
Jan 20 #PHP
php利用新浪接口查询ip获取地理位置示例
Jan 20 #PHP
php利用腾讯ip分享计划获取地理位置示例分享
Jan 20 #PHP
php生成缩略图示例代码分享(使用gd库实现)
Jan 20 #PHP
You might like
人族 Terran 魔法与科技
2020/03/14 星际争霸
PHP使用glob函数遍历目录或文件夹的方法
2014/12/16 PHP
2014最热门的24个php类库汇总
2014/12/18 PHP
php封装的验证码工具类完整实例
2016/10/19 PHP
php判断文件上传图片格式的实例详解
2017/09/30 PHP
二级域名或跨域共享Cookies的实现方法
2008/08/07 Javascript
JQuery 弹出框定位实现方法
2010/12/02 Javascript
背景图跟随鼠标移动的Mootools插件实现代码
2011/12/12 Javascript
javascript检查表单数据是否改变的方法
2013/07/30 Javascript
使用AngularJS创建单页应用的编程指引
2015/06/19 Javascript
JS日期加减,日期运算代码
2015/11/05 Javascript
使用vue制作FullPage页面滚动效果
2017/08/21 Javascript
动态创建Angular组件实现popup弹窗功能
2017/09/15 Javascript
vue better-scroll插件使用详解
2018/01/25 Javascript
JavaScript变速动画函数封装添加任意多个属性
2019/04/03 Javascript
python实现数独算法实例
2015/06/09 Python
Python装饰器用法实例总结
2018/02/07 Python
python pandas库的安装和创建
2019/01/10 Python
基于python的Paxos算法实现
2019/07/03 Python
关于matplotlib-legend 位置属性 loc 使用说明
2020/05/16 Python
解决c++调用python中文乱码问题
2020/07/29 Python
英国信箱在线鲜花速递公司:Bloom & Wild
2019/03/10 全球购物
西班牙在线宠物食品和配件商店:bitiba
2019/10/11 全球购物
我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串?
2014/03/30 面试题
自我评价格式
2014/01/06 职场文书
父母对孩子的寄语
2014/04/09 职场文书
优秀乡村医生事迹材料
2014/05/28 职场文书
应届大学生求职信
2014/07/20 职场文书
说好普通话圆梦你我他演讲稿
2014/09/21 职场文书
小学教师党员承诺书
2015/04/27 职场文书
2016年圣诞节寄语(一句话)
2015/12/07 职场文书
预防职务犯罪警示教育心得体会
2016/01/15 职场文书
创业计划书之小型广告公司
2019/10/22 职场文书
jquery插件实现图片悬浮
2021/04/16 jQuery
Java各种比较对象的方式的对比总结
2021/06/20 Java/Android
原生JS实现分页
2022/04/19 Javascript