Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/01/2007, 14h48   #1
Invité régulier
 
Inscription : octobre 2004
Messages : 18
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 18
Points : 7
Points : 7
Par défaut lire le contenu d'un fichier texte en php

Bonjour
je souhaite récupérer le contenu d'un fichier texte.
J'ai ce bout de code :

Code :
1
2
3
4
$fp = fopen ("monfichier.txt", "r");
while($contenu_du_fichier = fgets ($fp)){
$contenu_du_fichier.'<br>';
}
pour cela : ok.

Maintenant, sur chaque ligne figurent des infos séparées par des TAB (ascii 9). Ma question est comment récupérer un à un ces différents éléments ?

En gros j'aimerais récupérer pour ensuite insérer dans une base mysql.
Merci d'avance et bonne année.
jgoguel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2007, 14h53   #2
Membre Expert
 
Avatar de Djakisback
 
Inscription : février 2005
Messages : 1 797
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 1 797
Points : 1 688
Points : 1 688
Salut,
tu peux exploder chaque ligne en tableau avec "\t" comme séparateur :

Code :
1
2
3
4
5
$lines = file("file.txt");
foreach($lines as $line)	{
	$data = explode("\t", $line);
	var_dump($data);
}
Bye
Djakisback est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2007, 15h01   #3
Invité régulier
 
Inscription : octobre 2004
Messages : 18
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 18
Points : 7
Points : 7
super dis donc merci pour ta réactivité et pour ta réponse. C'est excatement ce qui me fallait... Sauf que...
sauf que :
heu.... chef... je fais comment pour récupérer tout ça maintenant ? je suis pas très au point avec les variables tab[].

D'avance merci !
jgoguel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2007, 15h20   #4
Membre Expert
 
Avatar de Djakisback
 
Inscription : février 2005
Messages : 1 797
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 1 797
Points : 1 688
Points : 1 688
Tu peux accéder aux valeurs d'un tableau par index :

tab[0]
tab[1]
etc.

Dans ton cas tu peux faire un implode si tous les champs de la table sont des string :

Code :
1
2
3
4
5
6
$lines = file("file.txt");
foreach($lines as $line)	{
	$line = trim($line); // pour virer le car de fin de ligne
	$data = explode("\t", $line);
	mysql_query("INSERT INTO table (id, nom, prenom) VALUES ('','".implode("','", $data)."')");
}
sinon tu peux le parcourir avec foreach.
Djakisback est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2007, 17h48   #5
Invité régulier
 
Inscription : octobre 2004
Messages : 18
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 18
Points : 7
Points : 7
super
merci beaucoup !!
jgoguel est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h23.


 
 
 
 
Partenaires

Hébergement Web