PHP的计数器程序:解决全部可能遇到的问题
一般的计数器程序用的执行外部程序函数 exec(),但很多主机空间(包括收费的)拒绝这个危险操作。
我们只好用fread(),fwrite()等文件读写函数,要害在于采用哪种方式fopen()打开文件。试了N次后,证实以下程序是可行,在收费空间上获得验证。
count目录
|---count.php
|---counter.txt
|---0~9的数字GIF图片(0.gif,...,9.gif)
<?php /* 本文件为countconut.php */ $countfile = "count/counter.txt"; if (!file_exists("$countfile")) { $fp = fopen("$countfile", "w"); $num = 1; fputs($fp, $num, 8); fclose($fp); } else { $fp = fopen("$countfile", "rw "); $num = fread($fp, 8); $num; rewind($fp); fputs($fp, $num, 8); fclose($fp); }
/*假如不用图片显示数字,请将以下直到 ?> 之前的部分,改为 echo "<font color=red>".$num."</font>";之类*/
$len_str = strlen($num); for ($i = 0; $i < $len_str; $i) { $numbers_exploded = substr($num, $i, 1); $output_str = $output_str . "<img src="count / $numbers_exploded . gif">"; } echo $output_str; ?>
使用方法:
例如,在count文件夹外面新建一个test.php。其它位置请修改 $countfile路径。
在test.php要显示的地方直接require一下count.php文件(注重路径)。
<?php echo "您是第"; require ("count/count.php"); echo "位访客"; ?> <br>
强调最后一个问题,请设置counter.txt文件可读写,Windows下文件权限为everyone,Linux下至少为444。网上的文件或Linux下的文件权限设置要使用FTP软件。
文章链接:http://www.phprm.com/develop/c26bc96d001b9ed1dcf0629341755eb6.html
随便收藏,请保留本文地址!