Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Domyślne kodowanie znaków w funkcjach PHP
Forum PHP.pl > Forum > PHP
Destroj
Witam,
Mam następujący problem do rozwiązania. Tworzę stronę internetową nadając jej kodowanie UTF-8.
Zarówno w kodzie html jak i w php [ini_set('Content-Type','text/html; charset=utf-8');]

Mój problem polega na tym, że funkcja kodująca znaki html przy takim wywołaniu:
Kod
htmlentities('ąłęćśó');


"Skrzaczy" polskie znaki.

Natomiast jeśli dodam parametr określający kodowanie
Kod
htmlentities('ąśśął',0,'utf-8');


Wszystko wykona się poprawnie.

W kodzie używam funkcji htmlentitles wiele razy i dopisywanie tych 2 parametrów przy każdym wykonaniu
byłoby męczące i czasochłonne. Moje pytanie brzmi, czy da się zdefiniować w 1 miejscu domyślne kodowanie znaków dla funkcji php?
wookieb
Sprawdz kodowanie pliku php -> np. w edytorze ked napisane jest kodowanie pliku i mozna je bez problemu zmienic.
rzymek01
default_charset w php.ini (bądź ini_set())
qBK
Cytat(wookieb @ 9.08.2008, 12:09:18 ) *
Sprawdz kodowanie pliku php -> np. w edytorze ked napisane jest kodowanie pliku i mozna je bez problemu zmienic.


Na htmlentities to nie działa - ustawiłem sobie w Notepadzie++ ANSI, UTF-8 BOM, ANSI-UTF i różnica jest tylko w tym, jak zamienia ę, ą itd. na encje winksmiley.jpg
Swoją drogą ciekawi mnie do czego wykorzystujesz htmlentities - mi nigdy się nie zdarzyło jeszcze żebym musiał koniecznie jej użyć; zwykle wystarcza mi htmlspecialchars" title="Zobacz w manualu PHP" target="_manual.
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.