手机
当前位置:查字典教程网 >编程开发 >php教程 >PHP中动态显示签名和ip原理
PHP中动态显示签名和ip原理
摘要:

<?php

//包含一个计数器,一个提醒语句,用户ip以及自己的广告图片。

//给浏览器发送头,说我是张图片

Header("Content-type:image/PNG");

//这里定义计数器,放到一个文件里的

$Visited=array();

if(!file_exists("Counter"))

{

for($i=0;$i<24;$i++)

$Visited[$i]=0;

$str=$Visited[0];

for($i=1;$i<24;$i++)

$str.=",$Visited[$i]";

$fp=fopen("Counter","w");

fputs($fp,$str);

fclose($fp);

}

else

{

$fp=fopen("Counter","r");

$str=trim(fgets($fp,100));

$Visited=explode(",",$str);

fclose($fp);

}

$Visited[date("G")]=intval($Visited[date("G")])+1;

$str=$Visited[0];

$max=intval($Visited[0]);

for($i=1;$i<24;$i++)

{

$str.=",$Visited[$i]";

if($max<=intval($Visited[$i]))

$max=intval($Visited[$i]);

}

$fp=fopen("Counter","w");

fputs($fp,$str);

fclose($fp);

$sum=0;

for($i=0;$i<24;$i++)

{

$sum+=$Visited[$i];

}

//计数器结束

//开始创建图片定义颜色字体等

$im=imagecreate(400,100);

$black=ImageColorAllocate($im,0,0,0);

$white=ImageColorAllocate($im,255,255,255);

$red=ImageColorAllocate($im,255,0,0);

$blue=ImageColorAllocate($im,0,0,255);

$font=5;

$maginx=20;

$maginy=20;

//定义ip和主机名,当然是用户端的

$ip=getenv('REMOTE_ADDR');

$host=gethostbyaddr($ip);

$today=getdate();

$wday=$today['wday'];

//提醒片断,是周末则好不是周末则提醒上课

if($wday==6||$wday==0){

$tips="enjoythewonderfulweekend!";

}else{

$tips="you'dbettergotoschool.";

}

if($wday==1){

$wday="Monday";

}elseif($wday==2){

$wday="Tuesday";

}elseif($wday==3){

$wday="Wednsday";

}elseif($wday==4){

$wday="Thursday";

}elseif($wday==5){

$wday="Friday";

}elseif($wday==6){

$wday="Saturday";

}elseif($wday==0){

$wday="Sunday";

}

//开始创建图像背景边框

imagefill($im,0,0,$black);

imagefilledrectangle($im,1,1,398,98,$white);

//定义画笔

$style=array($white,$white,$white,$white,$white,$white,$white,$white,$white,$red);

imagesetstyle($im,$style);

//有个运动效果就用笔刷来刷了,相当于photoshop中的画笔工具也

//ads是我自己的广告图

$brush=imagecreatefrompng("http://172.24.16.80/testpic/smile1.png");

$brush1=imagecreatefrompng("http://172.24.16.80/testpic/ads.png");

$w2=imagecolorallocate($brush,255,255,255);

imagecolortransparent($brush,$w2);

imagesetbrush($im,$brush);

imageline($im,350,20,360,20,IMG_COLOR_STYLEDBRUSHED);

imagecopy($im,$brush1,270,40,0,0,119,48);

//定义输出文字

imagestring($im,$font,$maginx,$maginy+20,"Yourcomputer'snamed:{$host}",$red);

imagestring($im,$font,$maginx,$maginy,"YourIPAddressis:{$ip}",$red);

imagestring($im,2,2,2,"Todayis{$wday}and{$tips}",$blue);

imagestring($im,3,10,$maginy+40,"TotalRefreshTimesFromToday:$sum",$blue);

//图片结尾必然语句

ImagePNG($im);

ImageDestroy($im);

?>

【PHP中动态显示签名和ip原理】相关文章:

PHP分页显示制作详细讲解

PHP编实现程动态图像的创建

PHP使用者状态管理功能的应用

一个显示天气预报的程序

PHP自动生成月历代码

PHP中在数据库中保存Checkbox数据(2)

PHP常用处理静态操作类

PHP中的命名空间详细介绍

PHP动态图像的创建

PHP4中实现动态代理

精品推荐
分类导航