我有一个count.php脚本,用于计算我网站上的刷新次数。它的代码是:
if (file_exists('countlog.txt'))
{
$fil = fopen('countlog.txt', r);
$dat = fread($fil, filesize('countlog.txt'));
echo $dat+1;
fclose($fil);
$fil = fopen('countlog.txt', w);
fwrite($fil, $dat+1);
}
else
{
$fil = fopen('countlog.txt', w);
fwrite($fil, 1);
echo '1';
fclose($fil);
}
问题在于,当我尝试运行它时,它总是算作两个。我曾尝试将echo $dat+1
修改为echo $dat
,但似乎无效。
任何帮助?
答案 0 :(得分:0)
你有error_resporting吗?我想不是。
尝试:
if (file_exists('countlog.txt'))
{
$fil = fopen('countlog.txt', 'r');
$dat = fread($fil, filesize('countlog.txt'));
echo $dat+1;
fclose($fil);
$fil = fopen('countlog.txt', 'w');
fwrite($fil, $dat+1);
}
else
{
$fil = fopen('countlog.txt', 'w');
fwrite($fil, 1);
echo '1';
fclose($fil);
}
检查一下:('countlog.txt', 'w')
你错过了'w'。
错过单引号时输出的错误是:
注意:使用未定义的常量r - 假设为'r'