Les Allergies
Alimentaires
Posez votre question Signaler

[PHP]Concaténer 2 fichiers ligne par ligne [Résolu]

bezourox 710Messages postés 30 mars 2007Date d'inscription 3 avril 2012Dernière intervention - Dernière réponse le 23 nov. 2010 à 16:07
Bonjour,
Voila le sujet me parait clair.
J'ai un fichier "nom.txt" avec :
DUPONT
DUBOIS
BERTRAND
J'ai un fichier "prenom.txt" avec :
Jean
Charles
Maurice
Je souhaite mettre en place une fonction php qui me génère un fichier "client" avec :
DUPONT Jean
DEBOIS Charles
BERTRAND Maurice
Lire la suite 

[PHP]Concaténer 2 fichiers ligne par ligne »

3 réponses
Réponse
+1
moins plus
La solution :
function concatenation() 
   { 
    // Ouverture du fichier en lecture [option "r"] 
      $fd = @fopen("/home/test","r"); 
        // si fopen retourne faux c'est que le fichier 
       // ne peut être ouvert en lecture 
       if (!$fd) die("Impossible d'ouvrir le fichier test"); 
        //on ouvre le fichier suite en lecture 
    $fd2 = @fopen("/home/suite","r"); 
    //on ouvre le fichier result en écriture 
    $fd3 = @fopen("/home/result", "w"); 
    // si fopen retourne faux c'est que le fichier 
    // ne peut être ouvert en lecture 
    if (!$fd2) die("Impossible d'ouvrir le fichier suite"); 
    // si fopen retourne faux c'est que le fichier 
    // ne peut être ouvert en lecture 
    if (!$fd3) die("Impossible d'ouvrir le fichier result"); 
       $i = 1; // compteur de ligne 
        //Tant qu'on est pas arrivé à la dernière ligne 
       while (!feof($fd)) { 
                    // On lit une ligne du fichier 
                   // et en tout cas au maximum 300 caractères 
                   $lignefd1 = fgets($fd, 300); 
                                        //On supprime le retour à la ligne avant concaténation 
     $lignefd1 = preg_replace('(\r\n|\n|\r|\t)',' ',$lignefd1); 
                   $lignefd2 = fgets($fd2, 300); 
                    //on concatène  
     $resultat = $lignefd1.$lignefd2; 
     //On écrit la concaténation dans le fichier result 
     fputs($fd3, $resultat); 
     // On incrémente i 
           $i++; 
    } 
     
        // On a fini, on ferme !! 
        fclose($fd); 
    fclose($fd2); 
    fclose($fd3); 
   }
Ajouter un commentaire
Réponse
+0
moins plus
Pourquoi cherche-tu compliquer avec tes fichiers texte alors qu'avec une base de donnée tu gagnerai ton temps
Ajouter un commentaire
Réponse
+0
moins plus
Parce que justement je ne peux pas utiliser une base de donnée
Ajouter un commentaire
Ce document intitulé « [PHP]Concaténer 2 fichiers ligne par ligne » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?