|
Konwersja standardów kodowania polskich znaków w PHPJedną z ważnych decyzji które należy podjąć rozpoczynając tworzenie nowej strony WWW jest określenie sposobu kodowania polskich znaków. Trzy standardy które zazwyczaj bierze się pod uwagę w takiej sytuacji to ISO-8852-2 (zalecany), Windows-1250 (zwykle odradzany) i UTF-8 (standard bazujący na Unicode, polecany do wielojęzycznych stron WWW). Po dokonaniu tego wyboru należy jeszcze dodać odpowiedni nagłówek <meta> do strony aby określić używany zestaw znaków, i ew. ustawić go w swoim ulubionym edytorze tekstu. Niestety wykonanie tych czynności nie zawsze oznacza koniec problemów z polskimi znakami - może zdarzyć się sytuacja że dane odczytywane z bazy danych, pliku XML lub też pobierane z Internetu będą używać innego standardu kodowania znaków. W takiej sytuacji konieczne będzie dokonanie odpowiedniej konwersji. Do przeprowadzenia konwersji można napisać własne funkcje w PHP. Znacznie lepiej jednak jest skorzystać z funkcji string iconv ( string in_charset, string out_charset, string str ) Oznacza to że funkcja ta przyjmuje trzy parametry:
Przykładowo konwersję tekstu z UTF-8 na ISO-8859-2 można wykonać następująco: $str = iconv("utf-8", "iso-8859-2", $str); Taki zapis jest jednak nieco przydługi, zwłaszcza jeżeli byłaby potrzeba zastosowania go w kilku miejscach. Dlatego też warto napisać sobie funkcje które uproszczą wywołanie funkcji // Konwersja UTF-8 -> ISO-8859-2 function Utf8ToIso($str) { return iconv("utf-8", "iso-8859-2", $str); } // Konwersja ISO-8859-2 -> UTF-8 function IsoToUtf8($str) { return iconv("iso-8859-2", "utf-8", $str); } Podsumowując: najłatwiejszą metodą wykonania konwersji standardów kodowania polskich (i nie tylko) znaków w PHP jest użycie funkcji Dodaj linka na swojej stronie! Po prostu skopiuj poniższy kod i wklej go na swojej stronie WWW. Gotowy link będzie wyglądał w taki sposób: |
| ||||||||||||||||||||||||||