Ecriture dans un fichier avec PHP
Fermé
brunooo
-
17 mars 2009 à 14:43
Nabla's Messages postés 18203 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 - 18 mars 2009 à 11:53
Nabla's Messages postés 18203 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 - 18 mars 2009 à 11:53
A voir également:
- Ecriture dans un fichier avec PHP
- Fichier rar - Guide
- Fichier host - Guide
- Fichier iso - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
8 réponses
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 192
17 mars 2009 à 14:47
17 mars 2009 à 14:47
attention, fseek va ecraser les données (comme quand tu appuies sur la touche insert de ton clavier)
je te conseillerai de rechercher l'octet auquel tu va ecrire, de charger dans une variable le début du fichier, d'y concatener ton texte, puis d'y concatainer la fin de fichier
je te conseillerai de rechercher l'octet auquel tu va ecrire, de charger dans une variable le début du fichier, d'y concatener ton texte, puis d'y concatainer la fin de fichier
c'est bon j'ai trouvé la solution j'ai utilisé la fonction eregi afin de sélectionner et de stocker uniquement certaines parties de mon texte présent dans mon fichier (que j'ai délimité avec des commentaires).
Ensuite j'ai concaténer avec la ligne à rajouter.
Puis j'ai écrasé l'ancien fichier avec le nouveau texte stocké dans une variable.
merci pour l'aide :)
Ensuite j'ai concaténer avec la ligne à rajouter.
Puis j'ai écrasé l'ancien fichier avec le nouveau texte stocké dans une variable.
merci pour l'aide :)
merci Nabla's je pense que c'est une très bonne solution.
mais maintenant je ne vois pas comment stocker juste le début de mon fichier dans une variable, puis juste la fin dans une autre variable... dois-je la stocker dans un tableau ? (array)
peut-être dois-je mettre en place des délimiteurs dans mon fichier .ini et faire une fonction eregi pour prendre juste une partie et la stocker dans ma variable ? c'est un peu flou pour moi...
mais maintenant je ne vois pas comment stocker juste le début de mon fichier dans une variable, puis juste la fin dans une autre variable... dois-je la stocker dans un tableau ? (array)
peut-être dois-je mettre en place des délimiteurs dans mon fichier .ini et faire une fonction eregi pour prendre juste une partie et la stocker dans ma variable ? c'est un peu flou pour moi...
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 192
17 mars 2009 à 16:25
17 mars 2009 à 16:25
tu fais une lecture de ton fichier dans une chaine normale ($machaine), jusqu'a l'endroit qui t'interesse, la tu ajoute le contenu ($machaine.="mon contenu a ajouter";) et ensuite, tu fini la lecture du fichier dans cette chaine(avec fread je croi....)
ensuite, tu effaces ton fichier, et tu le recrées completement
ensuite, tu effaces ton fichier, et tu le recrées completement
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
D'accord j'ai réussi à faire la lecture du fichier en entier avec fgets voici le code
while (!feof($ouvre)){
$stock = fgets($ouvre,100);
echo "<br>".$stock;
}
mais maintenant je ne vois pas comment je pourrais stocker tout cela dans une variable. ici le code m'affiche une ligne après l'autre du fichier dans la page php.
puis comment m'arrêter à un endroit précis dans le fichier ? par exemple à un commentaire ? la fonction eregi ou preg_match pourrait-elle m'aider ? merci...
while (!feof($ouvre)){
$stock = fgets($ouvre,100);
echo "<br>".$stock;
}
mais maintenant je ne vois pas comment je pourrais stocker tout cela dans une variable. ici le code m'affiche une ligne après l'autre du fichier dans la page php.
puis comment m'arrêter à un endroit précis dans le fichier ? par exemple à un commentaire ? la fonction eregi ou preg_match pourrait-elle m'aider ? merci...
c'est bon excusez moi je sais comment stocker le contenu de mon fichier dans une variable. mais comment m'arrêter à un endroit précis dans le fichier ?
si maintenant j'ai dans mon fichier une ligne de commentaire ";debut", ne puis-je pas faire par exemple
while($ligne != ";debut"){
$ligne .= fgets($handle,100)
}
j'ai testé mais bon cela ne fonctionne pas...
si maintenant j'ai dans mon fichier une ligne de commentaire ";debut", ne puis-je pas faire par exemple
while($ligne != ";debut"){
$ligne .= fgets($handle,100)
}
j'ai testé mais bon cela ne fonctionne pas...
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 192
18 mars 2009 à 09:43
18 mars 2009 à 09:43
j'ai cherche un peu pour toi ..
tu me met au php contre mon gré.
donc, tu prend ce code:
$stock="";
while (!feof($ouvre)){
$stock .= fgets($ouvre,1024);
}
tu as tout ton fichier dans la variable $stock
tu fais
$pos = strpos($stock,"la ou s'arreter");
ensuite, tu copies dans $result les $pos premires charactères de ta chaine
ensuite, tu fais $result.= "texte a ajouter"
puis
$result.= caractères après $pos
je te laisse chercher les fonctions pour prendre qu'une parti de la chaine...
tu me met au php contre mon gré.
donc, tu prend ce code:
$stock="";
while (!feof($ouvre)){
$stock .= fgets($ouvre,1024);
}
tu as tout ton fichier dans la variable $stock
tu fais
$pos = strpos($stock,"la ou s'arreter");
ensuite, tu copies dans $result les $pos premires charactères de ta chaine
ensuite, tu fais $result.= "texte a ajouter"
puis
$result.= caractères après $pos
je te laisse chercher les fonctions pour prendre qu'une parti de la chaine...
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 192
18 mars 2009 à 11:53
18 mars 2009 à 11:53
y'a pas d'koi