kimmelf2
Messages postés267Date d'inscriptionlundi 22 septembre 2003StatutMembreDernière intervention27 novembre 2005
-
16 nov. 2005 à 04:45
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 2010
-
16 nov. 2005 à 08:37
salut !!
j'aurais voulu savoir comment fonctionne les fonctions str_replace et equivalentes.
est ce que c'est a la premiere chaine trouvee ou a celle qui correspond le mieux ?
par exemple, pour un forum, je voudrais faire un bout de code qui remplace des mots-clefs
par une image, une sorte de pseudo-smiley quoi. par ex remplacer le mot wanadoo par
le logo du FAI
mon soucis c'est que je voudrais aussi que le texte soit remplace par des "lettres-images"
le a deviens
le b .....
donc pour mon logo wanadoo, vu que c'est un pseudo-smiley, il ne doit pas etre converti en w.jpg a.jpg .....
accessoirement, c'est pour fonctionner avec un forum base sur phpbb, avec du bbcode.
si le bbcode pouvais passez au travers de la conversion .....
sinon il faudra que je me tape le decoupage du texte mot a mot, avec analyse de chaque morceaux pour savoir
comment il faut le convertir ..... j'en ai deja des sueurs froides :-)
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 16 nov. 2005 à 08:37
Hello,
bon, plusieurs choses :
- les eregs ... : je suppose que par là, tu entends "expressions régulières". Un très bon site pour apprendre, se perfectionner, et venir se raffraîchir la mémoire quand on est un pro des expregs : http://www.expreg.com. Le forum de ce site est aussi très bien quand on bloque sur une expression régulière particulièrement hardue que les gourous des forums de prog habituels ont du mal à résoudre, parce que Yves, le webmaster de ce site est une référence en la matière...Très, très fort!
Concernant les fonctions php utilisant les expressions régulières, vas voir du côté des preg_machin ou ereg_machin (sachan que les preg_machin sont plus rapides; ce sont les PCRE) : http://fr.php.net/manual/fr/function.preg-match.php
- str_replace : cette fonction n'utilise pas les expressions régulières. Elle est bien plus rapide qu'une fonction les utilisant, mais plus limitée aussi. Ceci dit, quand tu peux utiliser str_replace, préfère la à une expreg (question d'optimisation et d'utilisation intelligente des fonctions). Pour son utilisation, plutôt que de t'expliquer :
http://fr.php.net/manual/fr/function.str-replace.php
- pour ton problème : le remplacement des lettres dans TOUS le message peut se faire avec str_replace(). Concernant ton logo wanadoo, je n'ai pas pigé ce que tu voulais ;-) Pour le bbcode, ça va être simple si tu différencie bien ce que TU veux modifier, et ce que le parser de phpbb (quelle horreur, pourquoi ce forum...?) modifie.