![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 141 Pomógł: 1 Dołączył: 2.12.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam, kiedyś o tym czytałem a teraz nie mogę tego znaleźć.
A mianowicie mam skrypt kodowany w UTF8 bez BOM, kodowanie ustawione na utf8, a kiedy wywołuj funkcję: Kod $i=12; echo strftime('%B', mktime(0, 0, 0, $i, 1)); Nie wyświetla mi polskich znaków przy nazwach miesięcy. setlocale mam ustawiony: Kod $arrLocales = array('pl_PL.UTF-8','pl_PL','polish'); setlocale(LC_ALL, $arrLocales ); Jednak nie wiem czy jest on poprawnie zadeklarowany. Ten post edytował xajart 23.12.2009, 00:20:46 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Hmmm, a w phpinfo() nie wyświetli, jakie kodowanie zostało wybrane, strefa czasowa etc? Użyj funkcji typu mb_detect_encoding by określić, w jakim kodowaniu zwracana jest data a następnie np. iconv by zmienić kodowanie na takie, jakie chcesz.
Edit: (uzupełniam) 1. Cytat powinno się używać funkcji strftime() - potwierdzam2. Cytat pod Windows dochodzi do różnych dziwnych rzeczy - również potwierdzam, strftime działa pod linuchem bez zarzutu, pod windowsem można robić protezy w stylu:Sztuczka z rozpoznaniem kodowania a następnie wstawienia go jako źródłowego w iconv także pod windowsem może sprawić problemy gdyż ogólnie znaną prawdą jest, że wszelkie funkcje typu kodowanie znaków źle sobie radzą z windowsem ![]() Ten post edytował Pilsener 23.12.2009, 13:56:13 |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 952 Pomógł: 154 Dołączył: 20.01.2007 Skąd: /dev/oracle Ostrzeżenie: (0%) ![]() ![]() |
Do formatowania dat w językach innych niż angielski powinno się używać funkcji strftime(), gdyż date() niezbyt się przejmuje ustawieniami locale.
-------------------- Specjalista ds. głupich i beznadziejnych, Zyx
Nowości wydawnicze: Open Power Collector 3.0.1.0 | Open Power Autoloader 3.0.3.0 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Cytat Nie wyświetla mi polskich znaków przy nazwach miesięcy. To zależy od platformy. Najlepiej sytuacja ma się pod Uniksem; pod Windows dochodzi do różnych dziwnych rzeczy z diakrytykami. Jeśli zależy Ci na międzyplatformowości, utwórz tablice z nazwami dni/miesięcy. -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 17:53 |