一个图形显示IP的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. ?>
    程序结束

    此文为转载

相关文章
在ecshop的商品详情页调用商品所属品牌的描述ecshop中批量替换货号前缀PHP 性能优化技巧php中用substr截取时中文乱码的解决办法PHP服务器变量$_SERVER详解PHP中的正则表达式完整的editplus之php语法文件用php实现远程网络文件下载到服务器使用PHP通过GOOGLE翻译接口自动翻译文件PHP中rawurlencode将字符串编码成URL专用格式时与页面编码的关系全新学习PHP[第一天]PHP技巧:php过滤危险html代码php中计算时间差的几种方法PHP读取目录下所有文件的代码php下过滤HTML代码的函数ASP与PHP读取多张表(多张表的操作)越来越喜欢玩PHP了最近喜欢上PHP了[转载]关于ajax与php结合中文处理问题
    标签:phpip 发布于:2008-05-22 08:05:33

当前共有0条评论,我也要发表:

    我的名字:

    我的邮箱: