[PHP] str_replace() avec comptage
Résolu/Fermé
ten62
Messages postés
158
Date d'inscription
dimanche 22 juin 2008
Statut
Membre
Dernière intervention
5 avril 2011
-
7 juil. 2009 à 20:27
ten62 Messages postés 158 Date d'inscription dimanche 22 juin 2008 Statut Membre Dernière intervention 5 avril 2011 - 11 juil. 2009 à 19:28
ten62 Messages postés 158 Date d'inscription dimanche 22 juin 2008 Statut Membre Dernière intervention 5 avril 2011 - 11 juil. 2009 à 19:28
A voir également:
- [PHP] str_replace() avec comptage
- Easy php - Télécharger - Divers Web & Internet
- Php?id=1 - Forum PHP
- Bouton php - Forum PHP
- \R php ✓ - Forum PHP
- Grille de comptage - Forum Graphisme
5 réponses
Utilisateur anonyme
7 juil. 2009 à 23:26
7 juil. 2009 à 23:26
trouvé !
a toi d'ajouter la regex pour les liens ;)
EDIT :
bon dans mon élan:
<?php $str = "rouge blablablablabla rouge blablablablabla rouge encore et re rouge "; $nbr_words = substr_count($str, 'rouge '); for($i=1; $i<=$nbr_words; $i++){ $str = preg_replace('/rouge /', 'rouge'.$i.' ', $str, 1); } echo $str; ?>
a toi d'ajouter la regex pour les liens ;)
EDIT :
bon dans mon élan:
<?php $str = "https://www.google.com/?gws_rd=ssl blablablablabla http://www.site.com/ blablablablabla http://www.resite.com"; $nbr_words = substr_count($str, 'http://www'); for($i=1; $i<=$nbr_words; $i++){ $str = preg_replace('#http://www.[a-z0-9._/-]+#i', 'http://site.com/page.php?numero='.$i.'&url=', $str, 1); } echo $str; ?>
Utilisateur anonyme
7 juil. 2009 à 21:49
7 juil. 2009 à 21:49
EDIT->Oups désoler le code ne fonctionnait vraiment pas, je reposte quand j'ai quelque chose qui fonctionne
jeangilles
Messages postés
816
Date d'inscription
samedi 21 juin 2008
Statut
Membre
Dernière intervention
17 juillet 2012
185
7 juil. 2009 à 22:24
7 juil. 2009 à 22:24
Tu devrais aller voir du coté de preg_replace
en effet tu peux lui passer dans un parametre le nombre max d'occurences à remplacer (tu mettrais donc 1 dans ton cas)
et tu fais une boucle : tant que ta chaine initiale est différente de la chaine apres le preg_match, tu incrémentes un variable
ca donnerai quelquechose comme ca :
$i=1;
$letexte = '...';
$lachainearemplacer = 'rouge '; // pas oublier l'espace à la fin sinon ca va continuer à boucler ^^
while($letexte != preg_replace("/$lachainearemplacer/" ,$lachainearemplacer.$i.' ' , $letexte, 1){
$i++;
}
en effet tu peux lui passer dans un parametre le nombre max d'occurences à remplacer (tu mettrais donc 1 dans ton cas)
et tu fais une boucle : tant que ta chaine initiale est différente de la chaine apres le preg_match, tu incrémentes un variable
ca donnerai quelquechose comme ca :
$i=1;
$letexte = '...';
$lachainearemplacer = 'rouge '; // pas oublier l'espace à la fin sinon ca va continuer à boucler ^^
while($letexte != preg_replace("/$lachainearemplacer/" ,$lachainearemplacer.$i.' ' , $letexte, 1){
$i++;
}
ten62
Messages postés
158
Date d'inscription
dimanche 22 juin 2008
Statut
Membre
Dernière intervention
5 avril 2011
23
7 juil. 2009 à 23:09
7 juil. 2009 à 23:09
Merci mais ça ne fonctionne pas ..
Plus concrètement, je voudrait remplacer tout les liens de ma page, en y ajoutant juste après le href=" ceci :
http://site.com/page.php?numero=1&url=
http://site.com/page.php?numero=2&url=
http://site.com/page.php?numero=3&url=
http://site.com/page.php?numero=4&url=
Une idée ?
Merci bcp !
Plus concrètement, je voudrait remplacer tout les liens de ma page, en y ajoutant juste après le href=" ceci :
http://site.com/page.php?numero=1&url=
http://site.com/page.php?numero=2&url=
http://site.com/page.php?numero=3&url=
http://site.com/page.php?numero=4&url=
Une idée ?
Merci bcp !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ten62
Messages postés
158
Date d'inscription
dimanche 22 juin 2008
Statut
Membre
Dernière intervention
5 avril 2011
23
11 juil. 2009 à 19:28
11 juil. 2009 à 19:28
vraiment un super méga merci !