Créer un compteur de visiteurs simple en PHP avec un fichier texte. Rapide, léger et parfait pour apprendre les bases du backend.


Tu veux juste savoir combien de gens passent… sans te compliquer la vie



Tu viens de lancer un petit site.
Peut-être un blog, un projet perso ou un test en local.

Et forcément, à un moment, la curiosité arrive :


“Est-ce que quelqu’un visite vraiment mon site… ou c’est juste moi et mon F5 ?”

Pas besoin de sortir une solution ultra complexe.
Un simple compteur peut déjà te donner une réponse.


Et bonne nouvelle : en PHP, ça se fait avec un fichier texte et quelques lignes propres.


Le principe : un compteur version minimaliste


On va faire simple :

  • un fichier stocke le nombre de visites
  • PHP lit ce nombre
  • ajoute +1
  • puis l’enregistre


C’est basique… mais ça marche.


Étape 1 : créer le fichier compteur


Dans ton projet, crée un fichier :


counter.txt


Et mets dedans :


0


C’est ton point de départ.
Ton compteur commence à zéro, comme une nouvelle partie.


Étape 2 : le code PHP


Voici la version la plus simple possible :


<?php
$file = "counter.txt";

// Lire le nombre actuel
$count = (int) file_get_contents($file);


// Incrémenter
$count++;


// Sauvegarder
file_put_contents($file, $count);


// Afficher
echo "Visiteurs : " . $count;
?>


Comprendre rapidement ce qui se passe


Pas besoin de sortir un cours complet :

  • file_get_contents() → lit le contenu du fichier
  • (int) → transforme en nombre
  • ++ → ajoute une visite
  • file_put_contents() → sauvegarde


Chaque chargement de page = +1


Simple. Brut. Efficace.


Le petit piège : les accès en même temps


Si plusieurs visiteurs arrivent en même temps, le fichier peut être modifié en même temps.


Résultat : compteur pas fiable.


Version améliorée avec verrouillage


Pour éviter ça, on verrouille le fichier pendant l’écriture :


<?php
$file = "counter.txt";

$fp = fopen($file, "c+");


// Verrouillage
flock($fp, LOCK_EX);


// Lecture
$count = (int) fread($fp, filesize($file));


// Incrément
$count++;


// Réécriture
ftruncate($fp, 0);
rewind($fp);
fwrite($fp, $count);


// Déverrouillage
flock($fp, LOCK_UN);
fclose($fp);


// Affichage
echo "Visiteurs : " . $count;
?>


Là, ton compteur devient déjà beaucoup plus solide.


Bonus : éviter les faux visiteurs (toi inclus)


Parce que bon… si tu refresh 20 fois, ça fausse un peu les stats.


Tu peux limiter ça avec un cookie :


<?php
$file = "counter.txt";

if (!isset($_COOKIE['visited'])) {


$count = (int) file_get_contents($file);
$count++;
file_put_contents($file, $count);


setcookie('visited', 'true', time() + 3600); // 1 heure
}


echo "Visiteurs : " . file_get_contents($file);
?>


Résultat :
un utilisateur = une visite par heure.


Déjà beaucoup plus propre.


Ce que ce compteur ne fait pas


Soyons honnêtes :

  • il ne différencie pas les utilisateurs
  • il compte les robots
  • il ne donne pas d’analyses avancées
  • il ne remplace pas un vrai outil de stats


Mais ce n’est pas son rôle.


Quand utiliser ce type de compteur


Ce système est parfait si tu veux :

  • ajouter une petite stat rapide
  • apprendre PHP
  • éviter une base de données
  • tester un projet
  • comprendre la logique backend


C’est le genre de mini outil qui t’apprend beaucoup pour très peu de code.


Ce compteur de visiteurs simple en PHP est exactement le genre de solution rapide qui fait le job sans te noyer dans la complexité. En quelques lignes, tu ajoutes une fonctionnalité visible, utile et surtout formatrice. Ce n’est pas une solution professionnelle, mais pour un projet perso ou un apprentissage, c’est largement suffisant.


Si tu veux aller plus loin ensuite, tu peux passer sur une base de données ou un système de tracking plus avancé. Mais avant ça, comprendre ce genre de base te donne déjà un bon réflexe de développeur.


#php #snippet #compteur #visiteurs #webdev #backend #debutant