Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zaznaczanie tekstu za pomocą preg_replace
Forum PHP.pl > Forum > PHP
borpaw
Kod ten elegancko zmienia tło łańcucha $word (wykorzystując do tego css) dopóki nie pojawią się wyrazy z polskimi znakami takie jak "się" "aż"
Kodowanie strony mam ustawione jako UTF-8, co trzeba zrobić żeby preg_replace widział polskie znaki?

  1. $text = preg_replace("/\b($word)\b/siu", '<span class="highlight_word">\1</span>', $text);


marrrecki
Przekonwertuj plik na UTF-8.
modern-web
Cytat(marrrecki @ 6.12.2010, 15:54:49 ) *
Przekonwertuj plik na UTF-8.

Cytat
Kodowanie strony mam ustawione jako UTF-8, co trzeba zrobić żeby preg_replace widział polskie znaki?...?


Chyba raczej powinieneś przekonwertować na ISO-8859-2 smile.gif

Pozdrawiam.
Quadina
Jeżeli masz problemy z preg_match to poszukaj w manualu o iconv. Pozwoli na konwersje z innych kodowań na pożądane. Z doświadczenia wiem, że preg_match czasami wariuje nawet dla wyciągniętych z bazy danych informacji idealnych rekordów utf8 - odpowiedź na zagadnienie jest prosta. Ten sam skrypt w innych konfiguracjach serwera potrafi zachowywać się różnie dla znaków specjalnych. Dowód: Na OVH nigdy nie miałem problemu z kodowaniem i szukaniem funkcjami preg_match. Wystarczyło przenieść skrypt na serwer klienta na nazwa.pl i .... nie komentuje ;-)
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.