一个图形显示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 文件上传后缀名与文件类型对照表(几乎涵盖所有文件)
May 16 PHP
简单的移动设备检测PHP脚本代码
Feb 19 PHP
PHP中用hash实现的数组
Jul 17 PHP
PHP之短标签开启设置
Jun 17 PHP
php+highchats生成动态统计图
May 21 PHP
php之curl实现http与https请求的方法
Oct 21 PHP
PHP中文编码小技巧
Dec 25 PHP
centos+php+coreseek+sphinx+mysql之一coreseek安装篇
Oct 25 PHP
PHP自定义多进制的方法
Nov 03 PHP
php表单处理操作
Nov 16 PHP
Laravel Validator自定义错误返回提示消息并在前端展示
May 09 PHP
php判断目录存在的简单方法
Sep 26 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
wiki-shan写的php在线加密的解密程序
2008/09/07 PHP
phpmyadmin 访问被拒绝的真实原因
2009/06/15 PHP
php cout&amp;lt;&amp;lt;的一点看法
2010/01/24 PHP
php中使用DOM类读取XML文件的实现代码
2011/12/14 PHP
PHP实现的封装验证码类详解
2013/06/18 PHP
了解PHP的返回引用和局部静态变量
2015/06/04 PHP
php+ajax注册实时验证功能
2016/07/20 PHP
深入解析PHP中SESSION反序列化机制
2017/03/01 PHP
AngularJS实现动态编译添加到dom中的方法
2016/11/04 Javascript
详解vue的数据binding绑定原理
2017/04/12 Javascript
Angular.js中下拉框实现渲染html的方法
2017/06/18 Javascript
解决vue页面刷新或者后退参数丢失的问题
2018/03/13 Javascript
使用Vue.js开发微信小程序开源框架mpvue解析
2018/03/20 Javascript
vue权限路由实现的方法示例总结
2018/07/29 Javascript
python获取beautifulphoto随机某图片代码实例
2013/12/18 Python
Python tempfile模块学习笔记(临时文件)
2014/05/25 Python
Python实现基于HTTP文件传输实例
2014/11/08 Python
python检查URL是否正常访问的小技巧
2017/02/25 Python
python django 增删改查操作 数据库Mysql
2017/07/27 Python
Python实现的读写json文件功能示例
2018/06/05 Python
一行Python代码过滤标点符号等特殊字符
2019/08/12 Python
centos+nginx+uwsgi+Django实现IP+port访问服务器
2019/11/15 Python
pytorch  网络参数 weight bias 初始化详解
2020/06/24 Python
HTML5 History API 实现无刷新跳转
2016/01/11 HTML / CSS
马来西亚演唱会订票网站:StubHub马来西亚
2018/10/18 全球购物
新西兰最大的天然保健及护肤品网站:HealthPost(直邮中国)
2021/02/13 全球购物
关于Java finally的面试题
2016/04/27 面试题
物业管理工作方案
2014/05/10 职场文书
财务会计专业求职信
2014/06/09 职场文书
勿忘国耻9.18演讲稿(经典篇)
2014/09/14 职场文书
2014教师党员个人自我评议
2014/09/20 职场文书
2014年组织部工作总结
2014/11/14 职场文书
优秀班主任材料
2014/12/16 职场文书
2016春季田径运动会广播稿
2015/12/21 职场文书
MySQL中datetime时间字段的四舍五入操作
2021/10/05 MySQL
为自由献出你的心脏!「进击的巨人展 FINAL」2022年6月在台开展
2022/04/13 日漫