用PHP来实现计数器很简单,计数器的实现分为两个阶段:一是实现计数;二是实现数字的显示;而在实现计数时又有两种方式:一是基于文件的计数方式;二是基于数据库的计数方式。
1.基于文件的计数
<? if(!file_exists("visit_log/counter.txt")){ $fp=fopen("visit_log/counter.txt","w"); fwrite($fp,"000001"); //这里假设最大为6位,你可以根据需要修改 $counter="000001"; fclose($fp); } //检查counter.txt文件是否存在,如果不存在则新建一个文件,并且写入“00001”。 else{ $fp=fopen("visit_log/counter.txt","r"); $counter=fread($fp,6); //----------------------------- $counter+=1; //----------------------------- fclose($fp); switch(strlen($counter)){ //将counter变量格式化,这样显得美观 case 1: $counter="00000".$counter; break; case 2: $counter="0000".$counter; break; case 3: $counter="000".$counter; break; case 4: $counter="00".$counter; break; case 5: $counter="0".$counter; break; } $fp=fopen("visit_log/counter.txt","w"); fwrite($fp,$counter); fclose($fp); } ?>
2.基于数据库的计数
<? $cn=mysql_connect("localhost","root","******"); mysql_select_db("visit_log",$cn); $sql="select * from visit_counter"; $result=mysql_query($sql,$cn); $record=mysql_fetch_array($result); if(empty($visited)){ $counter=$record["amount"]+1; $sql="update visit_counter set amount=$counter"; $result=mysql_query($sql,$cn); } mysql_close($cn); switch(strlen($counter)){ //将counter变量格式化 case 1: $counter="00000".$counter; break; case 2: $counter="0000".$counter; break; case 3: $counter="000".$counter; break; case 4: $counter="00".$counter; break; case 5: $counter="0".$counter; break; }?>
总结:
以上用两种方法实现了计数功能,细心的网友可能看出counter变量好像没有用处。其实它就是我们用来显示的变量。
相关推荐:
Atas ialah kandungan terperinci 如何用PHP制作自己的计数器. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!