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 14/03/2007, 10h29   #1
Membre régulier
 
Inscription : février 2007
Messages : 483
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 483
Points : 75
Points : 75
Par défaut Concaténer 2 fichiers dans un 3ème ?

Bonjour,

j'aurais besoin de savoir comment concaténer simplement (je veux dire l'un à la suite de l'autre) 2 fichiers.

Disons :
menuXML_1.xml
menuXML_2.xml

pour créer : menuXML.xml


Merci !
Mister Paul est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/03/2007, 10h33   #2
Rédacteur
 
Avatar de RideKick
 
Homme
Directeur technique
Inscription : septembre 2006
Messages : 5 959
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Directeur technique
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : septembre 2006
Messages : 5 959
Points : 10 889
Points : 10 889
file_get_contents() est ton ami
__________________
Pas de questions techniques en MP please

Mon site perso
RideKick est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/03/2007, 10h38   #3
Membre chevronné
 
Avatar de grabriel
 
Inscription : septembre 2006
Messages : 935
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 935
Points : 626
Points : 626
Salut,

une solution peut etre d'ouvrir le fichier1 le balancer dans le fichier3, ouvrir le fichier2 et continuer l'écoulement de données dans le fichier3.

un bout de code pour te mettre sur la voie :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
$chemin="ton_fichier1.xml";
$descrip=fopen($chemin,"r");
 
$fichi="ton_fichier3.xml";
$creehandle=fopen($fichi,w);
 
//test si le fichier est vide
if ($descrip <=0){
    die("Ne peut pas ouvrir le ton_fichier1.xml");
}
 
while (!fEof ($descrip)){
  $ligne=fGets($descrip,455);//prends une ligne
  fputs($creehandle,$ligne);//l'injecte dans le fichier3
}
...
grabriel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/03/2007, 15h48   #4
Membre régulier
 
Inscription : février 2007
Messages : 483
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 483
Points : 75
Points : 75
Merci pour vos réponses.
Grabriel j'ai utilisé ton code et je l'ai dupliqué pour le 2ème fichier en modifiant la position du curseur dans le fichier final :
$creehandle=fopen($fichi,a);
Et c'est OK Merci !

Je vois qu'il n'y a pas de fclose :
faut-il en mettre un pour chacun des fichiers ouverts ?

Sinon, je regardais du côté de file_put_contents, qui semble pas mal puisque ça "revient à appeler les fonctions fopen(), fwrite(), et fclose() successivement."
Ça serait peut-être plus simple comme code non ?
Mister Paul est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/03/2007, 15h50   #5
Membre chevronné
 
Avatar de haltabush
 
Développeur Web
Inscription : avril 2005
Messages : 726
Détails du profil
Informations personnelles :
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2005
Messages : 726
Points : 790
Points : 790
Les fclose te permettrons de ne pas trop surcharger ton serveur, mets les donc.

edit: je ne connais file_put_contents, mais si elle fait ce que tu veux, utilise la : une fonction php est généralement plus optimisée que nos bouts de codes ^^
haltabush 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 09h24.


 
 
 
 
Partenaires

Hébergement Web