我试图创建一个点击计数器,一旦达到一定数量(在这种情况下,5),它将不再显示点击量.这是我的代码:
<?php
$count = ("hits.txt");
$hits = file($count);
$hits[0] ++;
$fp = fopen($count , "w");
fputs($fp , "$hits[0]");
fclose($fp);
if ($hits > 5) {
echo "More than 5 hits";
}
else {
echo $hits[0];
}
?>
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
你太复杂了.这样做会容易得多:
$hits = file_get_contents('hits.txt');
++$hits;
file_put_contents('hits.txt', $hits);
if($hits > 5) {
echo 'Over 5!';
}
// else etc
Run Code Online (Sandbox Code Playgroud)
至于你当前的代码,问题是你没有使用正确的语法测试命中数$hits[0]- 你已经使用过fputs- 而是错误的$hits.请记住,由于file工作方式,$hits本身就是一个数组.PHP很乐意让你将数组与一个整数进行比较,并且有一些规则可以定义比较的工作方式,但不要去那里.