Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]preg_replace, dlaczego to nie dziala?
kapuch
post
Post #1





Grupa: Zarejestrowani
Postów: 389
Pomógł: 69
Dołączył: 26.04.2010
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Tak jak w temacie, czemu taki kod nie dziala jak powinien (nie koloruje):
  1. $dni = array('poniedzialek', 'wtorek', 'środa', 'czwartek', 'piątek', 'sobota', 'niedziela');
  2. $tekst = "Byłem w czwartek w kinie.";
  3. $tekst_kolor = preg_replace("/".$dni."/", "<font color=\"red\">".$dni."</font>", $tekst);
  4. echo $tekst_kolor;
  5.  
  6. // A taki dziala
  7. $dni = array('poniedzialek', 'wtorek', 'środa', 'czwartek', 'piątek', 'sobota', 'niedziela');
  8. $tekst = "Byłem w czwartek w kinie.";
  9. $tekst_kolor = preg_replace("/".$dni[3]."/", "<font color=\"red\">".$dni[3]."</font>", $tekst);
  10. echo $tekst_kolor;
  11.  
  12. // Taki tez dziala
  13. $dni = array('/poniedzialek/', '/wtorek/', '/środa/', '/czwartek/', '/piątek/', '/sobota/', '/niedziela/');
  14. $dzien_kolor = array('poniedzialek', 'wtorek', 'środa', '<font color="red">czwartek</font>', 'piątek', 'sobota', 'niedziela');
  15. $tekst = "Byłem w czwartek w kinie.";
  16. $tekst_kolor = preg_replace($dni, $dzien_kolor, $tekst);
  17. echo $tekst_kolor;

Chodzi o to, ze w manualu wystarczy odwolanie do nazwy tablicy, a funkcja sama podstawia odpowiedni klucz, ale jak widac u mnie dziala to tylko wtedy, gdy w parametrach preg_replace podam same nazwy funkcji bez
Kod
"/".$funkcja."/", "<font color=\"red\">".$funkcja."</font>" - w tym przypadku musze juz podac klucz tablicy :/

Mozna to jakos zrobic inaczej, bo nie bawi mnie rozwiazanie z druga tablica i w kazdym kluczu dodawanie <font color>.
Prosze tez nie zwracac uwagi na semantyke kodu i uzycie <font>, ktory jest juz zdeprecjonowany - wiem o tym, podalem tylko dla przykladu.

EDIT: Poprawilem literowke w kodzie, bylo "</font"> zamiast "</font>". Ale to nie ma wplywu na moj problem, poniewaz ten kod pisalem specjalnie na potrzebe tego tematu, w oryginale mam troche inaczej i bez literowek (IMG:style_emoticons/default/smile.gif)

Ten post edytował kapuch 1.07.2010, 14:06:29
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 17:47