当前位置: 首页 > 图文教程 > 网络编程 > PHP > 一个图形显示IP的PHP程序代码

PHP
PHP实时显示输出
php生成缩略图的类代码
php相当简单的分页类
smarty section简介与用法分析
php优化及高效提速问题的实现方法
php下实现在指定目录搜索指定类型文件的函数
PHP base64+gzinflate压缩编码和解码代码
脚本安全的本质_PHP+MYSQL
使用eAccelerator加密PHP程序
PHP注释实例技巧
php 友好URL的实现(吐血推荐)
关于DISCUZ不用通行证登陆得内容介绍
不用mod_rewrite直接用php实现伪静态化页面代码
Cannot modify header information错误解决方法
php获取地址栏信息的代码
php email邮箱正则
php preg_match_all结合str_replace替换内容中所有img
PHP中str_replace函数使用小结
Zend studio for eclipse中使php可以调用mysql相关函数的设置方法
php flush类输出缓冲剖析

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 212 ::
收藏到网摘: n/a

先看代码
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. ?>
程序结束