一般,自己做的文本计数器或者日历要放在*.PHP文件中,如果一定要用htm或html做文件扩展名(例如index.html),还能放计数器或者日历吗?回答是肯定的。方法是先用PHP的图形输出功能画出所要的图形,再利用HTTP标头信息使html文件能把这个PHP文件当作一个图形文件来处理,在*.htm或*.html文件中放计数器或日历变得和放置一个图片文件一样简单!下面是计数器图形文件count.php和日历文件date.php的PHP源代码:
---------------文件count.php(计数器)----------
if(!file_exists("count.txt"))
exec("echo 0 > count.txt");
$fp = fopen("count.txt", "r+");
$FileSize = filesize("count.txt");
$Count = fgets($fp, $FileSize + 1);
$Count += 1;
fseek($fp, 0);
fputs($fp, $Count);
fclose($fp);
$strCount = strval($Count); //获得的记数转成字符串
$strCount = Chop($strCount);
$CountLen = strlen($strCount);
for($i = 0; $i $strCount = "0".$strCount;
//创建图象
$img = imagecreate(90, 26);
//匹配颜色
$black = imagecolorallocate($img, 0, 0, 0);
$green = imagecolorallocate($img, 0, 255, 0);
$fgray = imagecolorallocate($img, 180, 180, 180);
$dgray = imagecolorallocate($img, 130, 130, 130);
$gray = imagecolorallocate($img, 160, 160, 160);
//绘制边框
imagerectangle($img, 0, 0, 89, 25, $fgray);
imagerectangle($img, 1, 1, 88, 24, $dgray);
imagerectangle($img, 2, 2, 87, 23, $gray);
//输出记数
imagestring($img, 4, 13, 5, $strCount, $green);
//输出图片
header("Content-type:image/png");
imageinterlace($img, 1);
imagepng($img);
?>
---------------文件date.php(日历)----------------------------
//创建图象
$img = imagecreate(132, 26);
//匹配颜色
$black = imagecolorallocate($img, 0, 0, 0);
$green = imagecolorallocate($img, 0, 255, 0);
$fgray = imagecolorallocate($img, 180, 180, 180);
$dgray = imagecolorallocate($img, 130, 130, 130);
$gray = imagecolorallocate($img, 160, 160, 160);
//绘制边框
imagerectangle($img, 0, 0, 131, 25, $fgray);
imagerectangle($img, 1, 1, 130, 24, $dgray);
imagerectangle($img, 2, 2, 129, 23, $gray);
//输出日期
imagestring($img, 4, 11, 5, date("Y.m.d.D"), $green);
//输出图片
header("Content-type:image/png");
imageinterlace($img, 1);
imagepng($img);
?>
只要把这两个文件当作图形文件插入到HTML文件的任何地方,就成为计数器和日历了,可以到下列地址看看效果:
http://youziyun.oso.com.cn