fwrite episode 2 - PHP - Programmation
Marsh Posté le 21-07-2004 à 17:17:50
recherche sur le forum :
http://forum.hardware.fr/forum2.ph [...] subcat=393
Marsh Posté le 22-07-2004 à 17:13:49
T509 a écrit : recherche sur le forum : |
Merci ça va bcp m'aider...
encore une question...
imaginez que j'ai donc ça
<!-- marqueur 1 -->
mon texte ici !!!!
<!-- fin marqueur 1 -->
est ce que cette fonction pourrait faire un "rechercher/remplacer" de ce qui se trouve entre deux marqueurs ? En francais mon script dirait :
"remplace tout ce qui est entre
<!-- marqueur 1 -->
et
<!-- fin marqueur 1 -->
par
"mon nouveau texte"
???
Is it possible ???
Merci
Marsh Posté le 22-07-2004 à 17:20:32
tout est possible, il faut aller voir la fonction substr()
Marsh Posté le 23-07-2004 à 12:10:01
T509 a écrit : tout est possible, il faut aller voir la fonction substr() |
Bon j'ai retrafiqué la fonction de ton post... ça marche :
Code :
|
simplement je suis toujours pas dans l'esprit que je voulais... faut que j'y travailles encore !
Marsh Posté le 23-07-2004 à 14:49:05
T509 a écrit : tout est possible, il faut aller voir la fonction substr() |
bon là je lutte un peu...
strstr ou strchr me retourne la chaine après l'occurence..
genre
Code :
|
... ya pas deja une fonction qui donne la chaine entre deux occurences ????
Marsh Posté le 23-07-2004 à 14:52:01
tu peux utiliser une expression régulière
pour ca utilise la fonction "preg_replace"
Marsh Posté le 23-07-2004 à 15:18:49
mathix a écrit : tu peux utiliser une expression régulière |
Yessssssss !!! ça marche !!!!
Code :
|
werk werk werk !!!!
Marsh Posté le 23-07-2004 à 15:19:37
$motif = "<!-- marqueur 1 -->(.*)<!-- fin marqueur 1 -->";
eregi($motif, $chaine_a_traiter, $resultat);
dans $resultat, tu as les morceaux de chaine qui correspondent
(c'est un tableau)
ensuite, tu utilises substr() pour faire les mises à jour
Marsh Posté le 23-07-2004 à 15:21:23
T509 a écrit : $motif = "<!-- marqueur 1 -->(.*)<!-- fin marqueur 1 -->"; |
on dirait que avec ça ça marche bien :
$pattern="/$recherchedebut.*$recherchefin/s";
$text = preg_replace($pattern, $remplacement, $read);
Marsh Posté le 23-07-2004 à 15:53:59
oui c'est pareil
Marsh Posté le 23-07-2004 à 16:02:58
T509 a écrit : oui c'est pareil |
par contre je comprends pas bien la syntaxe de ça :
$pattern="/$recherchedebut.*$recherchefin/s";
Marsh Posté le 23-07-2004 à 16:17:21
regarde ici pour des explications sur les expressions régulières :
http://cyberzoide.developpez.com/php4/regex/
Marsh Posté le 21-07-2004 à 16:06:12
voila.. je vous explique ce que je veux faire...
je voudrais creer un fichier texte avec fwrite...
simplement je voudrais qu'il soit mis à jour ce fichier texte... avec par exemple un autre bout de texte dans un endroit bien précis...
par exemple je creer cela
"bonjour le monde"
... et maintenant je voudrais rajouter le mot "tout" entre "bonjour" et "le monde" pour faire
"bonjour tout le monde"
vous allez me dire un str_replace c'est trop facile !!!!
mais mon probleme est que je veux entre "bonjour" et "le monde" il y ait un repere qui indique où mon texte doit etre rajouté...
exemple
bonjour (x) le monde
... vous comprennez ou pas ????
j'explique avec autre chose.. un peu de HTML...
je veux un fichier HTML qui serait créé comme suit :
<html>
<body>
<p>
<!-- marqueur 1 -->
</p>
</body>
</html>
et je veux que dans ma mise à jour on rajoute "mon texte est ici !!!"
et au resultat ça sera :
<html>
<body>
<p>
mon texte est ici !!!
</p>
</body>
</html>
... vous feriez comment ?
Merci !
Message édité par freed102 le 21-07-2004 à 16:07:27