Domyślne kodowanie 5.6 może wywołać błędy na stronie

ToAr Ceneo Widget 0.3
26 listopada 2015
Pokaż wszystko

Domyślne kodowanie 5.6 może wywołać błędy na stronie

Szybka uwaga dla każdego kto zaktualizował swoją wersję PHP z 5.4 lub 5.5 do 5.6: Wartość default_charset w pliku php.ini zostało zmienione z pustej wartości do UTF-8. To może sprawić, że zawartość na niektórych stronach może wyświetlać się niepoprawnie, szczególnie w przypadku kodowania ISO-8859-2 ze strony znikają polskie znaki.

Domyśle ustawienie kodowania w PHP 5.4 i PHP 5.5 było puste, w związku z tym zawartość wyświetlała się poprawnie. Jednak w PHP 5.6 parametr default_charset ma domyślnie ustawione UTF-8, co oznacza, że PHP 5.6 zawsze będzie zwracać w nagłówku odpowiedzi kodowanie UTF-8.

Content-Type: text/html; charset=UTF-8

W związku z tym jak rozwiązać ten problem? PHP wspiera zdefiniowane przez użytkownika pliki php.ini, gdzie możesz nadpisać pewne ustawienia z głównego pliku konfiguracyjnego PHP. W związku z tym możesz dodać do katalogu swojej strony plik php.ini, w którym dodasz poniższą linijkę:

default_charset = "ISO-8859-2"

To sprawi, że PHP nie wyśle domyślnego kodowania UTF-8 do nagłówka odpowiedzi, ale kodowanie ISO-8859-2.

Również w pliku PHP możesz narzucić domyślne kodowanie poprzez zostanie wartości:

ini_set(default_charset, "ISO-8859-2");

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

20 − 10 =

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.

//]]>