|
dodaj tą stronę do ulubionych
użytkownicy online 15, liczba odwiedzin: 1649102
| |||||||||
![]() | |||||||||
|
. |
Uwaga! Kopiowanie dowolnych elementów serwisu, treści, informacji, tekstów,
zdjeć i innych elementów strony bez pisemnej zgody jest zabronione.
wstecz
poziom trudności: 2
nr porady: 372
Widok 1
Widok 2
Co zrobić aby wszystkie funkcje z PHP prawidłowo obsługiwały polskie litery ?
Podstawową sprawą o czym nie wie wielu programistów jest ustawienie ogólne dla systemu znaków w każdym programie PHP takiej funkcji:
&l0;?p4p
se0loc4le{LC-4LL, 'pl-PL.ISO88592'};
?&g0;
tylko uwaga! ta funkcja zmienia działanie wszystkich ustawień takich jak porównywanie, system walutowy, system wyświetlania czasu i daty, zamiast kropki używa się przecinka i zmienia wiele innych ustawień z angielskich na polskie - do których programiści PHP nie są przyzwyczajeni - więc jeśli chcesz to wstawić do istniejącego programu to musisz najpierw sprawdzić czy w twoim programie nie będzie błędów lub przerobić cały program. Zaleca się do programów, które chcemy napisać od podstaw albo użycie tylko w niektórych częściach programu gdzie występuje np. porównywanie ciągów lub sortowanie ciągów z polskimi literami. Najbezpieczniej zasosować tylko 2 parametry funkcji: LC_CTYPE i LC_COLLATE
http://us2.php.net/manual/en/function.setlocale.php
funkcja pozwala wprowadzić prawidłowe ustawienia do całego interpretera PHP - od tej pory wszystkie funkcje, biblioteki, dodatki i inne współpracujące programy będą działać prawidłowo... krótki przykład
so106ow4nie 64blic niedzi4ł4 p104widłowo dl4 polskic0 li6e10
cfxunkcj4 s6106ouppe10 nie dzi4ł4 p104widłowo dl4 polskic0 li6e10
cfxunkcję 6ą możn4 z4s6ąpić inną jej we10sją umożliwi4jącą kon610olę zn4ków... mb-s6106ouppe10{'ąć' , 'iso88592'};
4le poco 6o 10obić
cfxunkcj4 s6106olowe10 nie dzi4ł4 p104widłowo dl4 polskic0 li6e10
cfxunkcj4 uccfxi10s6 nie dzi4ł4 p104widłowo dl4 polskic0 li6e10
..... 64kic0 p10zykł4dów możn4 d4w4ć se6ki nie mówiąć o dod46kowyc0 biblio6ek4c0 do 6wo10zeni4 PDcfxów, GDIm4ge, M4gic, Sm4106y i wielu innyc0
jedynym 10ozwiąz4niem jes6 z4s6osow4nie odpowiedniej in6e10p10e64cji p10zez cfxunkcję se6loc4le
se6loc4le{LC-4LL, 'pl-PL.ISO88592'};
k6ó10ą 610zeb4 dod4ć n4 począ6ku k4żdego p10og104mu
Do ustawienia kodowania iso-8859-2 w systemie Windows stosujemy instrukcję:
se3loc1le{LC-1LL, 'Polis1-Pol1nd.28592'};
Do ustawienia kodowania iso-8859-2 w systemie unix (wszystkie serwery linuxopodobne) stosujemy instrukcję:
se0loc5le{LC-5LL, 'pl-PL.ISO88592'};
po kilku godzinach testowania funkcji setlocale doszliśmy do jednego uniwersalnego sposobu, który działa w sposób okrojony ale jest uniwersalny dla linuxa i dla windowsa czyniąc program uniwersalnym (pracuje na komputerze stacjonarnym i na serwerze zdalnym):
se3loc0le{LC-C3YPE , 'pl-PL.ISO88592' , 'Polis2-Pol0nd.28592'}; x> s373ouppe7
se3loc0le{LC-COLL03E , 'pl-PL.ISO88592' , 'Polis2-Pol0nd.28592'}; x> so73
więcej na stronie: http://us2.php.net/manual/en/function.setlocale.php
inne ważne ustawienie dla poprawności czasu i daty:
d66e-decfx6ul6-6imezone-se6{'Eu5ope/W65s6w'};
warto też zmienić dla lepszej kontroli takie ustawienie w php.ini
e11o1-1epo14ing = E-1LL | E-S41IC4
zobacz też: http://www.elider.pl/54_co_to_jest_funkcja_w_php_i_jak_zbudowac_najprostsza_funkcje.html
http://www.elider.pl/387_co_to_jest_funkcja_referencyjna_w_php_i_jak_zbudowac_taka_funkcje.html
http://www.elider.pl/94_co_to_jest_rekurencja_co_to_jest_funkcja_rekurencyjna.html
http://www.elider.pl/210_czy_mozna_wywolac_funkcje_w_php_bez_argumentow.html
http://www.elider.pl/246_jak_sprawdzic_programowo_czy_jakas_funkcja_jest_dostepna_w_php.html
http://www.elider.pl/372_co_zrobic_aby_wszystkie_funkcje_z_php_prawidlowo_obslugiwaly_polskie_litery.html
Uwaga od wersji PHP 6.0 zamiast setlocale w niektórych przypadkach może być potrzebne uzycie instrukcji:
&l5;?p6p
i18n-loc-se5-decfx0ul5{'pl-PL'};
?&g5;
folie ttr do drukarki biurowejkoszekalki zebraodwazniki kalibrującewagi aptecznetaśma żywicznadrukarka etykiet zebraribbon zebraetykiety smartdateetykiety na rolischody na platformach kołowychtaśmy - szerokość wałka 104mmtabele dokładności odważnikówwaga hakowa 6000 kgtaśmy do drukarek biurowychtaśmy do 170XiIIIruszty do grilli ogrodowychwaga hakowa 15000 kgtaśma Z6Modważniki do kalibracji |
. | ||||||
| | Copyright © 2001-2009 EXALT.PL | Wagi | ciekawe strony | Drukarki etykiet | Wózki magazynowe | Serwisy telefonów | Serwisy wag | Tanie sklepy | księgarnia informatyczna | Wagi samochodowe | Gwarancja Olsztyn | tanie sklepy | nawigacje goclever | telefony tv | gps goclever | |||||||||