IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

ajout d'une donnée dans un fichier texte


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 30
    Points : 25
    Points
    25
    Par défaut ajout d'une donnée dans un fichier texte
    Bonjour,

    j'ai un fichier texte dont voici un exemple :

    A;1,2,5,6
    B;6,9,8
    C;3,2,1
    D;4,3,5
    ...

    Mon soucis est que je veux ajouter 1 juste après le 8 de la ligne B;6,9,8
    pour avoir donc une ligne : B;6,9,8,1.

    J'y suis presque sauf que mon résultat est le suivant :

    A;1,2,5,6
    B;6,9,8
    ,1C;3,2,1
    D;4,3,5
    ...

    Le 1 vient se mettre devant le C du coup je perds la ligne C et c'est le boxon...

    voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
     
    $numero=1;
    $lettre_recherchee="B";
    $nom_fichier="lettres.txt";
    $tabLignes=file($nom_fichier);
     
    $contenu="";
     
    foreach($tabLignes as $index=>$ligne){
     
    $tab=split(";",$ligne);
    $lettre=$tab[0];//Récupère la lettre de la ligne.
    $listeNumeros=explode(',',$tab[1]);//Récupère les numéros de la ligne.
     
    if($lettre==$lettre_recherchee){
    	if(!in_array($numero,$listeNumeros)){
    	   array_push($listeNumeros,$numero); 
    	}
    }
     
     $contenu.=$lettre.';'.implode(",",$listeNumeros);
     
    }
     
    file_put_contents($nom_fichier,$contenu);
    Pourriez-vous me donner un coup de main je deviens fou...

  2. #2
    Membre averti Avatar de alceste
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    318
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 318
    Points : 356
    Points
    356
    Par défaut
    c'est parce qu'après le 8 y'a un retour à la ligne "\n" et donc tu ne le mets pas directement après le 8 mais après ce retour, du coup ton ',1' se retrouve à la ligne, il faudrait le placer entre le 8 et le retour.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 30
    Points : 25
    Points
    25
    Par défaut
    Merci du tuyau !

    Ca fonctionne, j'ai ajouté un trim sur la ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $tab=split(";",trim($ligne));
    Ce qui doit supprimer le retour à la ligne de la ligne courante et donc effectivement ça marche beaucoup mieux ! Grand merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [TPW] Ajout d'une ligne dans un fichier texte après une position saisie
    Par far3as dans le forum Turbo Pascal
    Réponses: 1
    Dernier message: 19/12/2010, 11h27
  2. Stockage de données dans des fichiers texte ou dans une base de données?
    Par Marc22 dans le forum Général Conception Web
    Réponses: 4
    Dernier message: 17/12/2010, 01h39
  3. Comment suprimer une donnée dans un fichier texte ?
    Par mamou30 dans le forum Langage
    Réponses: 8
    Dernier message: 30/10/2007, 11h12
  4. Sauvegarde et ajout de données dans un fichier texte
    Par hanane78 dans le forum MATLAB
    Réponses: 8
    Dernier message: 22/05/2007, 13h07
  5. Enregistrer les données d'une table dans un fichier texte word ou excel
    Par maamar1979 dans le forum Connexion aux bases de données
    Réponses: 2
    Dernier message: 14/06/2006, 13h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo