一个图形显示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 相关文章推荐
模板引擎Smarty深入浅出介绍
Dec 06 PHP
编写漂亮的代码 - 将后台程序与前端程序分开
Apr 23 PHP
php通用防注入程序 推荐
Feb 26 PHP
PHP下使用CURL方式POST数据至API接口的代码
Feb 14 PHP
基于PHP Socket配置以及实例的详细介绍
Jun 13 PHP
php 检查电子邮件函数(自写)
Jan 16 PHP
php通过排列组合实现1到9数字相加都等于20的方法
Aug 03 PHP
Zend Framework入门知识点小结
Mar 19 PHP
Smarty环境配置与使用入门教程
May 11 PHP
Yii+upload实现AJAX上传图片的方法
Jul 13 PHP
PHP使用redis消息队列发布微博的方法示例
Jun 22 PHP
php实现微信公众号创建自定义菜单功能的实例代码
Jun 11 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分页函数
2006/10/09 PHP
利用PHP和AJAX创建RSS聚合器的代码
2007/03/13 PHP
redis 队列操作的例子(php)
2012/04/12 PHP
ThinkPHP查询中的魔术方法简述
2014/06/25 PHP
初识Laravel
2014/10/30 PHP
laravel-admin select框默认选中的方法
2019/10/03 PHP
Nigma vs Liquid BO3 第一场2.13
2021/03/10 DOTA
javascript window.opener的用法分析
2010/04/07 Javascript
jQuery学习笔记(1)--用jQuery实现异步通信(用json传值)具体思路
2013/04/08 Javascript
兼容所有浏览器的js复制插件Zero使用介绍
2014/03/19 Javascript
Javascript中this的用法详解
2014/09/22 Javascript
微信小程序 地图定位简单实例
2016/10/14 Javascript
Angular2学习教程之ng中变更检测问题详解
2017/05/28 Javascript
webpack+vue2构建vue项目骨架的方法
2018/01/09 Javascript
详解基于vue-cli3.0如何构建功能完善的前端架子
2018/10/09 Javascript
jQuery内容选择器与表单选择器实例分析
2019/06/28 jQuery
jQuery位置选择器用法实例分析
2019/06/28 jQuery
[02:17]DOTA2亚洲邀请赛 RAVE战队出场宣传片
2015/02/07 DOTA
python封装对象实现时间效果
2020/04/23 Python
Python装饰器(decorator)定义与用法详解
2018/02/09 Python
python 实现语音聊天机器人的示例代码
2018/12/02 Python
把pandas转换int型为str型的方法
2019/01/29 Python
Python 200行代码实现一个滑动验证码过程详解
2019/07/11 Python
python cumsum函数的具体使用
2019/07/29 Python
Pytorch 抽取vgg各层并进行定制化处理的方法
2019/08/20 Python
django使用xadmin的全局配置详解
2019/11/15 Python
详解python 降级到3.6终极解决方案
2020/02/06 Python
Python基于pyecharts实现关联图绘制
2020/03/27 Python
Python 多线程共享变量的实现示例
2020/04/17 Python
CSS3实现线性渐变用法示例代码详解
2020/08/07 HTML / CSS
初中同学聚会邀请函
2014/02/03 职场文书
创建文明城市标语
2014/06/16 职场文书
校车安全责任书
2014/08/25 职场文书
个园导游词
2015/02/04 职场文书
关于空气污染危害的感想
2015/08/11 职场文书
Nginx进程调度问题详解
2021/09/25 Servers