我的计数器有问题。我需要计算两个变量,用 a 分隔|
,但有时计数器不会增加变量的值。
numeri.txt(计数器):
6122|742610
这是 PHP 脚本:
$filename="numeri.txt";
while(!$fp=fopen($filename,'c+'))
{
usleep(100000);
}
while(!flock($fp,LOCK_EX))
{
usleep(100000);
}
$contents=fread($fp,filesize($filename));
ftruncate($fp,0);
rewind($fp);
$contents=explode("|",$contents);
$clicks=$contents[0];
$impressions=$contents[1]+1;
fwrite($fp,$clicks."|".$impressions);
flock($fp,LOCK_UN);
fclose($fp);
我有另一个慢得多的计数器,但可以准确计算两个值(点击次数和展示次数)。有时,计数器numeri.txt
计算的展示次数比其他计数器多。为什么?我怎样才能解决这个问题?