一个图形显示IP的PHP程序代码


Posted in PHP onOctober 19, 2007

先看代码
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'];  
}  
$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 各种排序算法实现代码
Aug 20 PHP
php遍历目录viewDir函数
Dec 15 PHP
具有时效性的php加密解密函数代码
Jun 19 PHP
采用memcache在web集群中实现session的同步会话
Jul 05 PHP
PHP连接数据库实现注册页面的增删改查操作
Mar 27 PHP
深入浅析yii2-gii自定义模板的方法
Apr 26 PHP
php gd等比例缩放压缩图片函数
Jun 12 PHP
Laravel4中的Validator验证扩展用法详解
Jul 26 PHP
php使用ftp实现文件上传与下载功能
Jul 21 PHP
PHP实现统计所有字符在字符串中出现次数的方法
Oct 17 PHP
Laravel多用户认证系统示例详解
Mar 13 PHP
通过PHP设置BugFree获取邮箱通知
Apr 25 PHP
php在线生成ico文件的代码
Oct 09 #PHP
pw的一个放后门的方法分析
Oct 08 #PHP
使用 eAccelerator加速PHP代码的方法
Sep 30 #PHP
实现php加速的eAccelerator dll支持文件打包下载
Sep 30 #PHP
用windows下编译过的eAccelerator for PHP 5.1.6实现php加速的使用方法
Sep 30 #PHP
一些常用的php简单命令代码集锦
Sep 24 #PHP
php下实现伪 url 的超简单方法[转]
Sep 24 #PHP
You might like
php查看当前Session的ID实例
2015/03/16 PHP
laravel5.4利用163邮箱发送邮件的步骤详解
2017/09/22 PHP
laravel5.1 ajax post 传值_token示例
2019/10/24 PHP
在次封装easyui-Dialog插件实现代码
2010/11/14 Javascript
关于event.cancelBubble和event.stopPropagation()的区别介绍
2011/12/11 Javascript
javascript中强制执行toString()具体实现
2013/04/27 Javascript
深入解析contentWindow, contentDocument
2013/07/04 Javascript
简介JavaScript中fixed()方法的使用
2015/06/08 Javascript
js实现黑色简易的滑动门网页tab选项卡效果
2015/08/31 Javascript
jquery点击缩略图切换视频播放特效代码分享
2015/09/15 Javascript
各式各样的导航条效果css3结合jquery代码实现
2016/09/17 Javascript
js判断是否为空和typeof的用法(详解)
2016/10/07 Javascript
Javascript oop设计模式 面向对象编程简单实例介绍
2016/12/13 Javascript
基于jquery实现多选下拉列表
2017/08/02 jQuery
JS脚本加载后执行相应回调函数的操作方法
2018/02/28 Javascript
Node.js+Express+Mysql 实现增删改查
2019/04/03 Javascript
[01:15:56]2018DOTA2亚洲邀请赛3月30日 小组赛A组 TNC VS Newbee
2018/03/31 DOTA
从零学Python之入门(五)缩进和选择
2014/05/27 Python
Python中函数的用法实例教程
2014/09/08 Python
浅谈Python浅拷贝、深拷贝及引用机制
2016/12/15 Python
浅谈Python peewee 使用经验
2017/10/20 Python
Python实现的在特定目录下导入模块功能分析
2019/02/11 Python
python获取地震信息 微信实时推送
2019/06/18 Python
python list多级排序知识点总结
2019/10/23 Python
python实现高斯(Gauss)迭代法的例子
2019/11/20 Python
Python面向对象之多态原理与用法案例分析
2019/12/30 Python
python中HTMLParser模块知识点总结
2021/01/25 Python
CSS3的常见transformation图形变化用法小结
2016/05/13 HTML / CSS
Viking Direct爱尔兰:办公用品和家具
2019/11/21 全球购物
自荐信范文
2013/12/10 职场文书
美术第二课堂活动总结
2014/07/08 职场文书
幼儿园老师新年寄语2015
2014/12/08 职场文书
药品开票员岗位职责
2015/04/15 职场文书
校园广播站开场白
2015/06/01 职场文书
JavaScript+HTML实现学生信息管理系统
2021/04/20 Javascript
SQL Server内存机制浅探
2022/04/06 SQL Server