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

2018-09-07 14:24

阅读:282

  先看代码
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];
}elseif($_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];
}elseif($_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.?>
程序结束


评论


亲,登录后才可以留言!