Fgets() ou autres fonctions

cs_Diablo62 Messages postés 25 Date d'inscription samedi 27 décembre 2003 Statut Membre Dernière intervention 25 août 2011 - 29 janv. 2006 à 17:33
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 - 31 janv. 2006 à 21:06
Bonjour je voudrais savoir comment fonctionne la fonction fgets()
et en plus je voudrais savoir comment faire pour recup une valeur sur un ligne d'un fichier
je connais la ligne.
par exemple ligne 10

merci de votre aide

11 réponses

Tarvos Messages postés 40 Date d'inscription vendredi 11 mars 2005 Statut Membre Dernière intervention 24 mars 2006
29 janv. 2006 à 18:58
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
29 janv. 2006 à 20:28
Salut,

si c'est pour récupérer une ligne fais plutôt ceci :

$fichier=file('fichier.ext');

echo $fichier[9]; //10ème ligne

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
0
cs_Diablo62 Messages postés 25 Date d'inscription samedi 27 décembre 2003 Statut Membre Dernière intervention 25 août 2011
30 janv. 2006 à 22:05
merci anthomicro c est super pour la lecture
mais j ai encore 2 petites questions
1ere pour ecriture a une certaine ligne, comment je peux faire ?
2eme si je voulais rajouter par la suite un message sur la derniere ligne style fichier log
merci a tous pour vos reponses c est la premiere fois que je lis dans les fichiers !!
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
30 janv. 2006 à 22:32
1)

$fichier=file('fichier.ext');

$fichier[9]='contenu que tu veux remplacer';

$f=fopen('fichier.ext','w+');
fputs($f,join("\n",$fichier));
fclose($f);

2)

$fichier=file('fichier.ext');



$fichier[]='Une ligne en plus';



$f=fopen('fichier.ext','w+');
fputs($f,join("\n",$fichier));

fclose($f);
<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Diablo62 Messages postés 25 Date d'inscription samedi 27 décembre 2003 Statut Membre Dernière intervention 25 août 2011
30 janv. 2006 à 23:37
c est niquel mais y a 2 petits trucs qui sont pas correct
pour le fputs($f,join("",$fichier)); y a pas de \n car il passe une ligne a chaque fois ca j ai su trouver
mais en fait quand je fait
$fichier[9]='contenu que tu veux remplacer';
j obtient contenu que tu veux remplacer + ce qu il y avait avant
alors que je veux que le nouveau texte
dsl si je suis un peu chiant lol mais les fichiers c est pas du tout mon domaine je suis plus base de donnee...
en tout cas merci quand meme car c est du rapide et de bonne qualite lol
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
31 janv. 2006 à 00:38
"j obtient contenu que tu veux remplacer + ce qu il y avait avant
alors que je veux que le nouveau texte "

heu je comprends pas bien m'enfin on va tenter ça :

$f=fopen('fichier.ext','w+');
fputs($f,'contenu du futur fichier');
fclose($f);

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
0
cs_Diablo62 Messages postés 25 Date d'inscription samedi 27 décembre 2003 Statut Membre Dernière intervention 25 août 2011
31 janv. 2006 à 18:49
en fait si je fais
$fichier=file('fichier.ext');
$fichier[9]='contenu que tu veux remplacer';
$f=fopen('fichier.ext','w+');
fputs($f,join("",$fichier));
fclose($f);

le fichier de depart fichier obtenu
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 contenu que tu veux remplacer11 <- le probleme est la il concatene le changement et la ligne d apres
11 12
12

j ai essayer de rajouter \n dans la chaine que je rajoute mais il le prend en caractere
je veu juste inserer une ligne sans modifier l architecture j aurai voulu que le 11 reste a la ligne 11 je sais pas si tu vois ce que je veu dire??
0
cs_Diablo62 Messages postés 25 Date d'inscription samedi 27 décembre 2003 Statut Membre Dernière intervention 25 août 2011
31 janv. 2006 à 18:49
en fait si je fais
$fichier=file('fichier.ext');
$fichier[9]='contenu que tu veux remplacer';
$f=fopen('fichier.ext','w+');
fputs($f,join("",$fichier));
fclose($f);

le fichier de depart fichier obtenu
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 contenu que tu veux remplacer11 <- le probleme est la il concatene le changement et la ligne d apres
11 12
12

j ai essayer de rajouter \n dans la chaine que je rajoute mais il le prend en caractere
je veu juste inserer une ligne sans modifier l architecture j aurai voulu que le 11 reste a la ligne 11 je sais pas si tu vois ce que je veu dire??
0
cs_Diablo62 Messages postés 25 Date d'inscription samedi 27 décembre 2003 Statut Membre Dernière intervention 25 août 2011
31 janv. 2006 à 18:49
en fait si je fais
$fichier=file('fichier.ext');
$fichier[9]='contenu que tu veux remplacer';
$f=fopen('fichier.ext','w+');
fputs($f,join("",$fichier));
fclose($f);

le fichier de depart fichier obtenu
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 contenu que tu veux remplacer11 <- le probleme est la il concatene le changement et la ligne d apres
11 12
12

j ai essayer de rajouter \n dans la chaine que je rajoute mais il le prend en caractere
je veu juste inserer une ligne sans modifier l architecture j aurai voulu que le 11 reste a la ligne 11 je sais pas si tu vois ce que je veu dire??
0
cs_Diablo62 Messages postés 25 Date d'inscription samedi 27 décembre 2003 Statut Membre Dernière intervention 25 août 2011
31 janv. 2006 à 18:52
dsl petit bug a l envoi du message
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
31 janv. 2006 à 21:06
"j ai essayer de rajouter \n dans la chaine que je rajoute mais il le prend en caractere
je
veu juste inserer une ligne sans modifier l architecture j aurai voulu
que le 11 reste a la ligne 11 je sais pas si tu vois ce que je veu
dire??"

Rajoute un \n alors mais sinon je ne vois pas trop ce que tu veux dire :-(

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
0
Rejoignez-nous