Ajouter une chaine au milieu d'un fichier

Soyez le premier à donner votre avis sur cette source.

Snippet vu 4 463 fois - Téléchargée 28 fois

Contenu du snippet

Demandé sur le forum, comment ajouter une chaine de caractère au milieu d'un fichier, sans modifier le reste (j'espère qu'il n'est pas déjà présent sur les sources...)

Source / Exemple :


$file = fopen ($monfichier, "r");
$wholefile = fread($file, filesize($monfichier));
$lookpos = "insere ici"; //chaine apres laquelle on insere la chaine
$pos = strpos($wholefile, $lookpos);
$pos = $pos+strlen($lookpos);
$debutfile = substr($wholefile, 0, $pos); //on recup le debut du fichier
$finfile = substr($wholefile, $pos); // la fin du fichier
$newfile = $debutfile."\n".$toinsert."\n".$finfile; //on cree le nouveau fichier
//on supprime le fichier
fclose($file);
unlink($monfichier);
//pour le créer, perso, je met un fichier vide sur le serveur, C plus propre et 
//ça marche mieux que touch
copy("vide", $monfichier);
$file = fopen($monfichier, "a");
fwrite ($file, $newfile); 
fclose($file);

Conclusion :


Y a ptete mieux, si vous savez, dites le moi, ça améliorera mon code en plus

Merci ^^

++

A voir également

Ajouter un commentaire Commentaires
Messages postés
154
Date d'inscription
samedi 3 août 2002
Statut
Membre
Dernière intervention
12 décembre 2008

et je pensais, est il possible de supprimer une chaine d' un autre chaine ???
Messages postés
154
Date d'inscription
samedi 3 août 2002
Statut
Membre
Dernière intervention
12 décembre 2008

fodrai ptetre precisé k' il faut creer un fichier appelé "vide", qu' il faut donner une valeur a toinsert et a monfichier.....
ca serait plus cool,
sinon c un bon taff !!!
Messages postés
9
Date d'inscription
mercredi 19 mars 2003
Statut
Membre
Dernière intervention
14 février 2007

Merci, je cherchais justement un truc de ce style !
Messages postés
190
Date d'inscription
lundi 25 novembre 2002
Statut
Membre
Dernière intervention
22 décembre 2009

par contre (j'ai pas regarder TOUT le code) neanmois peut etre pourrait on rajouter un petit truc pour mettre a partir de quel iteration tu vux commencer.....du style strpos($wholefile, $lookpos,$debut)
;)
Messages postés
278
Date d'inscription
mardi 22 janvier 2002
Statut
Membre
Dernière intervention
29 août 2006

ah oui pardon, j'avais pas vu ^^
C'est vrai que j'ai un peu adapté le code, j'avais pleins de traitements entre les deux donc j'ai recopié de mémoire la fin =)
Merci je corrige de suite
Afficher les 8 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.