[PhP] sortir des infos d'un fichier texte

Petit nouveau ! | 3 Messages

18 oct. 2007, 11:07

Bonjour !

J'utilise un chat sur mon site. Ce chat note les connectés dans un fichier .txt ressemblant à cela:

Code : Tout sélectionner

Pseudo1;chiffre;;adresse_ip1 Pseudo2;chiffre;;adresse_ip2 Pseudo3;chiffre;;adresse_ip3
Je souhaiterais afficher uniquement les pseudos.
J'ai réussi à isoler le Pseudo1 par ce code:

Code : Tout sélectionner

<? $connects = fopen("/users.txt","r"); // ouverture du fichier txt $liste = fgets($connects,255); // lecture du fichier txt fclose($connects); // fermeture du fichier txt list($user, $x, $y, $ip) = explode(";", $liste); // le fichier est mis en tableau et indexé echo $user; // affichage de la donnée désirée ?>
Mon problème réside donc dans le traitement des lignes suivantes du fichier texte.
Comme puis-je afficher également Pseudo2, Pseudo3, ...

Merci beaucoup pour les explications à venir. Une réponse serait bien, une explication bien mieux :D

d0m
Mammouth du PHP | 1141 Messages

18 oct. 2007, 11:13

si tu veux séparer tes données par des ';', autant utiliser des fichiers CSV.
Au lieu de l'enregistrer sous blabla.txt tu l'enregistres sous blabla.csv

Un fichier CSV est justement un fichier avec des données séparées par des ; et où chaque ligne représentre une "entrée" différentes.

Et PHP possède des fonctions pour traiter les fichiers csv et justement faire exactement ce que tu veux.

Petit nouveau ! | 3 Messages

18 oct. 2007, 11:47

Merci ...
Par contre, pour modifier l'extension, il me semble que rename ne marche pas ...
Parce qu'en fait, mon chat utilise le fichier txt, donc il me faut le conserver intact.

Tu as une méthode pour modifier le .txt en .csv ?

d0m
Mammouth du PHP | 1141 Messages

18 oct. 2007, 11:48

je ne suis pas sur, mais c'est peut être même possible d'appliquer les fonctions csv aux fichiers au format txt.

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

18 oct. 2007, 11:59

le format CSV, c'est un contenu.
Tu peux donc avoir un fichier ".csv" qui ne pourra être parsé par fgetcsv() ou un fichier ".txt" qui pourra être parsé ;)
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Petit nouveau ! | 3 Messages

18 oct. 2007, 12:06

OK, merci beaucoup ...
Je vais donc retourner à mon code et vous tiendrais au courant ;)