Чтение файла в отдельном потоке с блокировкой его для избежания конкуренции с другими процессами.
<?php
$fp = fopen(__DIR__ . DIRECTORY_SEPARATOR . "counter.txt", "c+");
// я не ошибся. именно c+ - открытие на чтение и запись или создание и открытие на чтение и запись
if (flock($fp, LOCK_EX)) {
$data = (int) fgets($fp);
ftruncate($fp, 0);
fwrite($fp, $data + 1);
fflush($fp);
} else {
throw new \Exception('Counter error');
}
fclose($fp);