Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]preg_replace zamiana słowa na linki, Słowo 1 linki są 3 i każde kolejne znaleiozne słowo inny link
Forum PHP.pl > Forum > Przedszkole
kubek15
Witam

uzywam preg_replace do szukania danego ciągu lub słowa
  1. $zamiana = '<a href="http://www.allegro.pl">\0</a>';
  2. $wynik = preg_replace($wzorzec, $zamiana, $tekst);


no i jeżeli w $wzorzec mam słowo ala, a $tekst wygląda tak "ala ma kota, i ala ma kota, i ala niema kota" to teraz wszystkie słowa ala zamienia mi na link do allegro, a jak zrobić tak aby pierwsze sowo ala przenosiło do allegro, drugie słowo ala do wp.pl, a trzecie słowo do onet.pl ?

Jest to do zrobienia bo już próbowałem na pętli i nic
Proszę o jakieś rady,linki itp.

Dzięki pozdrawiam
amii
  1. $wzorzec = array();
  2. $wzorzec[0] = '/ala/';
  3. $wzorzec[1] = '/ala/';
  4. $wzorzec[2] = '/ala/';
  5. $zamiana = array();
  6. $zamiana[0] = '<a href="http://www.allegro.pl">\0</a>';
  7. $zamiana[1] = '<a href="http://www.wp.pl">\0</a>';
  8. $zamiana[2] = '<a href="http://www.onet.pl">\0</a>';
  9. echo preg_replace($wzorzec, $zamiana, $tekst);


?
kubek15
trzy linki robią się na początku, ale dalej to nie jest to co chciałem uzyskać

wygląda na to że przy pierwszej ali pojawiły się 3 linki, przy drugije ali równiez 3 linki itp.
athei
  1. $zamiana = array();
  2. $zamiana[0] = '<a href="http://www.allegro.pl">\0</a>';
  3. $zamiana[1] = '<a href="http://www.wp.pl">\0</a>';
  4. $zamiana[2] = '<a href="http://www.onet.pl">\0</a>';
  5.  
  6. $tekst = "ala ma kota, i ala ma kota, i ala niema kota";
  7. $co='ala';
  8. $atekst = explode(' ',$tekst);
  9. $ile = count($atekst);
  10. $i=0;
  11. $str='';
  12. foreach($atekst as $k=>$v){
  13. if($v==$co) {
  14. $v = preg_replace("/$co/",$zamiana[$i],$v);
  15. $i++;
  16. }
  17. $str.=$v;
  18. if ($k==$ile-1) break;
  19. $str.=' ';
  20. }
  21. echo $str;
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.