选择显示字体大小

用php制作动态计数器

  php的功能非常强大,你可以利用它做几乎任何事。不需要复杂的变量和代码,你就可以非常迅速地做出漂亮的计数器来。下面,就让我们一步一步的来做。

  其实,计数器的原理大家都知道,首先,确定一个记录文件,例如counter.txt或counter.log,每一次访问这个页面,就对这个文件加1,然后把结果显示出来。因此,我们的php代码开始应该是这样的:
<?php
&#36;countfile = "js/counter.inf";
//定义计数器写入的文件是当前目录下js目录中//counter.inf,然后我们应当测试该文件能否打开
if ((&#36;fp = fopen(&#36;countfile, "r+")) == false) { //用读写模式打开文件,若不能打开就退出
printf ("open file &#37;s failed!",&#36;countfile);
exit;
}
else
{
//如果文件能够正常打开,就读入文件中的数据,假设是1
&#36;count = fread (&#36;fp,10);
//读取10位数据
&#36;count = &#36;count + 1;
//count ++
fclose (&#36;fp);
//关闭当前文件
&#36;fp = fopen(&#36;countfile, "w+")
//以覆盖模式打开文件
fwrite (&#36;fp,&#36;count);
//写入加1后的新数据
fclose (&#36;fp);
//并关闭文件
}

  这时,整个计数工作就完成了,如果只是简单的文字计数的话,在这里就可以输出变量&#36;count的值。下面是将&#36;count转换为图片模式的代码:

&#36;fp = fopen (&#36;countfile, "r"); //以只读模式打开文件
&#36;array_count = 1; //定义一个表示数组元素位置的变量,下面要用
while (! feof(&#36;fp)) {
&#36;current_number = fgetc(&#36;fp);
&#36;counter_array[&#36;array_count] = &#36;current_number;
&#36;array_elements = count (&#36;counter_array);
&#36;array_count = &#36;array_count + 1;
}


  上面这个while循环的作用是把每一位数分离出来。它从counter.inf中由左到右逐位读取数值,并依次写入一个叫counter_array的数组中,这个数组的索引是从1开始的(&#36;array_count)。如果现在counter.inf中的数字是158,那么数组&#36;counter_array[]就像这样:&#36;counter_array[1] = 1、&#36;counter_array[2] = 5、&#36;counter_array[3] = 8。有了上面这些工作,我们就可以方便地显示不同的数字图片了,显示代码如下:

echo ("<table border=(&#36;&#37;&#36;43&#37;^#asd#2@&#36;#f&#36;&#37;^)0(&#36;&#37;&#36;43&#37;^#asd#2@&#36;#f&#36;&#37;^) height=(&#36;&#37;&#36;43&#37;^#asd#2@&#36;#f&#36;&#37;^)5(&#36;&#37;&#36;43&#37;^#asd#2@&#36;#f&#36;&#37;^) align=(&#36;&#37;&#36;43&#37;^#asd#2@&#36;#f&#36;&#37;^)center(&#36;&#37;&#36;43&#37;^#asd#2@&#36;#f&#36;&#37;^)><tr><td bgcolor=(&#36;&#37;&#36;43&#37;^#asd#2@&#36;#f&#36;&#37;^)#bab389(&#36;&#37;&#36;43&#37;^#asd#2@&#36;#f&#36;&#37;^) align=(&#36;&#37;&#36;43&#37;^#asd#2@&#36;#f&#36;&#37;^)center(&#36;&#37;&#36;43&#37;^#asd#2@&#36;#f&#36;&#37;^)>欢迎您,第");
for (&#36;array_id = 1;&#36;array_id < &#36;array_elements; ++ &#36;array_id) {
echo ("<img src=(&#36;&#37;&#36;43&#37;^#asd#2@&#36;#f&#36;&#37;^)images\\counter\\&#36;counter_array[&#36;array_id].gif(&#36;&#37;&#36;43&#37;^#asd#2@&#36;#f&#36;&#37;^) align=absmiddle>");
}
echo ("位客人</td></tr></table>");
}

  上面的代码很简单,就是画一个表格,并依次在表格中显示所需的图片。在\images\counter目录下有0.gif至9.gif十张图片,for循环遍历数组,从高位到低位给出每一位数相应的图片,直到数组的尾部。这样,一个完整的计数器就完成了。


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons