网站地图    收藏   

主页 > php专栏 > php综合实列 >

php简单自主开网页访问次数计数器代码 - 综合实

来源:自学PHP网    时间:2014-12-02 13:09 作者: 阅读:次

[导读] 这里是我们用php简单自主开网页访问次数计数器代码偌,是一款基于文件的图形计数器范例代码,会用到的文件用:num.txt //累计访问次数,vist.php//测试文件,count.php//统计访问次的核心程序,因...

php简单自主开网页访问次数计数器代码

这里是我们用php简单自主开网页访问次数计数器代码偌,是一款基于文件的图形计数器范例代码,会用到的文件用:num.txt //累计访问次数,vist.php//测试文件,count.php//统计访问次的核心程序,因为它会把文字转换成gif图片,并且输出到浏览器.

PHP访问次数计数器html代码如下:

  1. <HTML> 
  2. <HEAD> 
  3. <TITLE>图形计数器范例</TITLE> 
  4. </HEAD> 
  5. <BODY> 
  6. 您好,您是第<img src="ImgOutFileCount.php">位访客  
  7. </BODY> 
  8. </HTML> 

count.php文件,代码如下:

  1. <?php 
  2. Header("Content-type: image/gif"); 
  3. //http头,告诉浏览器,这是一个GIF图片 
  4. $countfile = "num.txt"; 
  5. //定义计数器写入的文件是当前目录下count.txt,然后我们应当测试该文件能否打开 
  6. if (($fp = fopen($countfile, "r+")) == false) { //用读写模式打开文件,若不能打开就退出 
  7.  printf ("打开文件 %s 失败!",$countfile); 
  8.  exit; 
  9. } 
  10. else 
  11. { 
  12.  //如果文件能够正常打开,就读入文件中的数据,假设是1 
  13.  $count = fread ($fp,10); 
  14.  //读取10位数据 
  15.  $count = $count + 1; 
  16.  fclose ($fp); 
  17.  //关闭当前文件 
  18.  $fp = fopen($countfile, "w+"); 
  19.  //以覆盖模式打开文件 
  20.  fwrite ($fp,$count); 
  21.  //写入加1后的新数据 
  22.  fclose ($fp); 
  23.  //并关闭文件 
  24. } 
  25. //定义输出为图像类型 
  26. $n=10; 
  27. //变量$n是显示位数 
  28.  
  29. //利用上面的方法,取得访问人数并赋值给变量$str1 (程序略) 
  30. $str1=$count; 
  31. $str2 = ""; 
  32. //位数如果不够$n位,在前面补0 
  33. $len1 = strlen($str1); 
  34. for ($i=1;$i<=$n;$i++) { 
  35. $str2 = "0".$str2; 
  36. }; 
  37. //得到$n位0 
  38. $len2 = strlen($str2); 
  39. //计算访问人数的位数 
  40. $dif = $len2 - $len1; 
  41. $rest = substr($str2, 0, $dif); 
  42. $string = $rest.$str1; 
  43. //位数如果不够$n位,在前面补0 
  44. for ($i=0;$i<=$n-1;$i++) { 
  45. $str[$i]=substr($string,$i,1); 
  46. }; 
  47. //以数组存储每位数字 
  48. $font = 4; 
  49. //定义字号 
  50. $im = imagecreate($n*11-1,16); 
  51. //新建图象 
  52. $black = ImageColorAllocate($im, 0,0,0); 
  53. $white = ImageColorAllocate($im, 255,255,255); 
  54. //定义颜色 
  55. imagefill($im, 0,0,$black); 
  56. //把计数器的底色设置成黑色 
  57. ImageString($im,$font,1,0,$str[0],$white); 
  58. for ($i=1;$i<=$n-1;$i++) { 
  59. imageline($im, $i*11-1,0,$i*11-1,16, $white); 
  60. ImageString($im,$font,$i*11+1,0,$str[$i],$white); 
  61. }; 
  62. //将每位写入图象,并以竖线分隔 
  63. ImageGif($im);//开源代码phpfensi.com 
  64. //图象输出 
  65. ImageDestroy($im); 
  66. //释放图象 
  67. ?> 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论