SURLIGNAGE de plusieurs mots clés

Signaler
Messages postés
4
Date d'inscription
jeudi 9 juin 2005
Statut
Membre
Dernière intervention
30 novembre 2010
-
Messages postés
3706
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
27 avril 2012
-
bonjour à tous
cette focntion bug legerement, elle souligne que le premier mot clé, pk ?

SURLIGNAGE en PHP avec plusieurs mots clefs


function surligne($str,$mot) {
$mot2s = split(" ",$mot);
$nombre_mots=count($mot2s);
$z=0;
while($z<$nombre_mots) {
return eregi_replace("($mot2s[$z])","\\1","$str");
$z++;
}
}

6 réponses

Messages postés
2380
Date d'inscription
lundi 4 février 2002
Statut
Membre
Dernière intervention
29 décembre 2012
16
ton return s'éxecute dès la premiere itération..donc dès le premier mot.
S.
Messages postés
4
Date d'inscription
jeudi 9 juin 2005
Statut
Membre
Dernière intervention
30 novembre 2010

yes c'est exact
mais comment contourner ca ????
Messages postés
2380
Date d'inscription
lundi 4 février 2002
Statut
Membre
Dernière intervention
29 décembre 2012
16
Tu veux surligner chaque mot mais pas les espaces ? ou toute la chaine espace compris ?
S.
Messages postés
4
Date d'inscription
jeudi 9 juin 2005
Statut
Membre
Dernière intervention
30 novembre 2010

juste souligner chauqe mots clefs

jarrive pas je bloque totalement là
Messages postés
4
Date d'inscription
jeudi 9 juin 2005
Statut
Membre
Dernière intervention
30 novembre 2010

function surligno($str,$mot) {
$mot2so = split(" ",$mot);
$nombre_mots=count($mot2so);
$za=0;
for ($za = 0; $za < $nombre_mots; $za++) {
$str = eregi_replace("($mot2so[$za])","\\1","$str");
}
return $str;
}
Messages postés
3706
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
27 avril 2012
30
Salut,

Attention à eregi_replace() qui est dépréciée et qui générera une alerte. Utilise preg_replace() à la place.

Je ne vois pas à quoi sert le split() et la boucle.
Une simple regex suffit.


Cordialement,


Kohntark -