Jak zmienić kodowanie tekstu z UTF-8 na ISO-8859-2?

Adam Boduch

W PHP należy użyć funkcji iconv() która dokona konwersji. Jest to dość proste, lecz wymagana jest zainstalowana biblioteka libiconv. Biblioteka dostępna jest pod adresem: http://www.gnu.org/software/libiconv/. Następnie trzeba <wiki href="kompilacja">przekompilować</wiki> PHP z poleceniem: --width-iconv=/sciezka

Żeby skorzystać z tej biblioteki na <wiki href="Windows">Windowsie</wiki> należy skopiować plik iconv-1.3.dll z katalogu z bibliotekami PHP do katalogu systemowego: C:\WINNT\SYSTEM32 lub C:\WINDOWS\SYSTEM32. Owa biblioteka na systemy Windows jest w standardowym wyposażeniu PHP; może ona nosić nazwę php_iconv.dll lub iconv.dll. Potem pozostaje jeszcze odkomentowanie linii:

;extension=php_iconv.dll

w pliku php.ini.

Użycie funkcji iconv() jest bajecznie proste - oto przykład:

echo iconv('UTF-8', 'ISO-8859-2', 'tekst do konwersji');
// i na odwrot
echo iconv('ISO-8859-2', 'UTF-8', 'tekst do konwersji');
FAQ

2 komentarzy

czy mogłbym proscic o dokladne wskazowki - zmieniam co trzeba w php.ini i wgrywam php_iconv.dll do C:\WINDOWS\SYSTEM32 ale nie działa

przy uruchomieniu servera wsykakuja błędy

chce zrobic konwersje windows-1250 -> iso-8859-2

Autor poszedl na latwize, bo nie wzial pod uwage tych wszystkich ktorzy nie maja mozliwosci zmiany pliku konfiguracyjnego php.ini.