|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Membre du Club
![]() Inscription : janvier 2007 Messages : 410 ![]() |
Bonjour,
Je voudrais modifier un fichier txt, qui a comme contenu: Code :
Code :
|
||||
|
|
00
|
|
|
#2 | ||
|
Membre Expert
![]() Inscription : septembre 2010 Messages : 1 242 ![]() |
Je te le fais parce que ce serait plus long à expliquer
Code :
__________________
- Réalisations - Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical. |
||
|
|
00
|
|
|
#3 | ||
|
Membre du Club
![]() Inscription : janvier 2007 Messages : 410 ![]() |
difficil a comprendre, le resultat obtenu:
Citation:
le resultat souhaitable est: Citation:
|
||
|
|
00
|
|
|
#4 |
|
Membre confirmé
![]() Inscription : juin 2002 Messages : 351 ![]() |
le code marche bien pour moi aussi
__________________
Franchement, je suis capable du meilleur comme du pire, mais, dans le pire, c'est moi le meilleur. Coluche |
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() Inscription : septembre 2010 Messages : 1 242 ![]() |
Bon l'explication :
L'emploi de "file" est pour récupérer le résultat du fichier texte dans un tableau. L'emploi de "FILE_IGNORE_NEW_LINES" est pour supprimer les symboles de retour ligne qui se trouvent à la fin de chaque ligne. Donc ensuite on liste le tableau récupéré avec un foreach. On fait un explode sur le " = " pour récupérer ce qui nous intéresse dans le deuxième élément du tableau résultant (cf fonction explode). Bon pour faire la même chose on pourrait utiliser une autre technique avec strrchr (cf doc) mais là n'est pas le problème. A ce niveau là on devrait récupérer Pour supprimer le dernier ";" de cette expression je me sert de la fonction "rtrim", cf doc. rtrim supprime le dernier caractère indiqué en paramètre uniquement si ce caractère se trouve en dernière position. C'est pour cette raison qu'au début du code j'ai utilisé FILE_IGNORE_NEW_LINES avec file pour supprimer les retour ligne, qui lors de la récupération sont le dernier caractère de chaque ligne. Une fois les retours lignes supprimés on devrait donc avoir ";" en dernière position et rtrim les supprime, tu me suis ? Le reste est simplement la reconstruction de la chaine que tu souhaite en sortie avec à la fin un "\n" pour indiquer un retour ligne. Je passe sur file_put_contents (cf doc). Le problème est que si je recopie ton exemple de fichier texte et que je teste le code que je t'ai indiqué et bien ça fonctionne correctement chez moi. Il m'est donc difficile de te dire d'où vient le problème... le fichier texte que tu utilises doit être différent au niveau des caractères cachés etc.. Cela dit pour supprimer le dernier ";" à la place d'utiliser rtrim tu peux utiliser des fonctions genre strstr (avec l'option TRUE). A toi de faire des essais car étant donné que je n'ai pas les mêmes résultats chez moi... Contrôle par des affichages à chaque étape pour mieux comprendre et faits afficher les caractères cachés pour bien les visualiser dans tes fichiers.
__________________
- Réalisations - Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical. |
|
|
00
|
|
|
#6 |
|
Membre du Club
![]() Inscription : janvier 2007 Messages : 410 ![]() |
Merci ABCIWEB
je veux juste supprimer le ; avant ) |
|
|
00
|
|
|
#7 |
|
Membre du Club
![]() Inscription : janvier 2007 Messages : 410 ![]() |
peut on utiliser preg_replace??
|
|
|
00
|
|
|
#8 | ||
|
Membre du Club
![]() Inscription : janvier 2007 Messages : 410 ![]() |
des remarques??
Code :
|
||
|
|
00
|
|
|
#9 |
![]() ![]() Inscription : septembre 2010 Messages : 7 131 ![]() |
il sort d’où ton fichier txt a la base ?
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#10 |
|
Membre du Club
![]() Inscription : janvier 2007 Messages : 410 ![]() |
|
|
|
00
|
|
|
#11 |
![]() ![]() Inscription : septembre 2010 Messages : 7 131 ![]() |
t'as la main dessus ?
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#12 |
|
Membre du Club
![]() Inscription : janvier 2007 Messages : 410 ![]() |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com