多个文本文件中的递增计数器

incrementing counter in multiple text file

当用户访问我的页面时,我试图在多个文本文件中增加一个计数器,但我正在使用的代码不起作用下面是代码

$files = glob("counters/visit/*.txt");


foreach($files as $file) {
    $content = file_get_contents($file);


    if(!isset($_SESSION['hasVisited'])){
      $_SESSION['hasVisited']="yes";
      $content++;
      $f = fopen($files, "w");
      fwrite($f, $content);
      fclose($f);
    }
}

首先通过执行以下操作确保 $content 是一个整数:

$content = intval(file_get_contents($file));

那么你正在使用:

$f = fopen($files, "w");

而不是:

$f = fopen($file, "w");

fopen 不能接受数组作为参数

另外正如@alanlittle 所提到的,如果您希望所有文件都递增,您应该考虑设置 $_SESSION['hasVisited']="yes"; 的那一刻并将其放在循环的末尾。