| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- EN-Revision: 21864 -->
- <!-- Reviewed: no -->
- <sect1 id="zend.locale.functions">
- <title>Użycie Zend_Locale</title>
- <para>
- <classname>Zend_Locale</classname> udostępnia zlokalizowane informacje o innych locale.
- Włączając w to nazwy innych locale, dni tygodnia, miesięcy itp.
- </para>
- <sect2 id="zend.locale.copying">
- <title>Kopiowanie, klonowanie oraz serializowanie obiektów locale</title>
- <para>
- Aby pomyślnie zduplikować obiekt locale należy użyć
- <ulink url="http://php.net/language.oop5.cloning">klonowania obiektów</ulink>.
- Większość metod świadomych locale przyjmują w argumencie nazwę locale, taką jaka
- jest zwracana przez <code>$locale->toString()</code>.
- </para>
- <example id="zend.locale.copying.example-1">
- <title>Klonowanie</title>
- <programlisting language="php"><![CDATA[
- $locale = new Zend_Locale('ar');
- // Serializacja oraz zapisanie obiektu $locale
- $serializedLocale = $locale->serialize();
- // odtworzenie oryginalnego obiektu
- $localeObject = unserialize($serializedLocale);
- // Uzyskanie identyfikatora locale
- $stringLocale = $locale->toString();
- // Utworzenie kopii obiektu $locale
- $copiedLocale = clone $locale;
- print "copied: ", $copiedLocale->toString();
- // PHP automatycznie wywołuje toString() poprzez __toString()
- print "copied: ", $copiedLocale;
- ]]></programlisting>
- </example>
- </sect2>
- <sect2 id="zend.locale.equals">
- <title>Równość</title>
- <para>
- <classname>Zend_Locale</classname> udostępnia wygodną funkcję służącą do porównania
- dwóch locale. Wszystkie klasy świadome locale powinny umożliwiać podobną funkcjonalność.
- </para>
- <example id="zend.locale.equals.example-1">
- <title>Sprawdzenie równoważnych locale</title>
- <programlisting language="php"><![CDATA[
- $locale = new Zend_Locale();
- $mylocale = new Zend_Locale('en_US');
- // Sprawdzenie równoważności
- if ($locale->equals($mylocale)) {
- print "Locales are equal";
- }
- ]]></programlisting>
- </example>
- </sect2>
- <sect2 id="zend.locale.getdefault">
- <title>Domyślne locale</title>
- <para>
- Metoda <methodname>getDefault()</methodname> zwraca tablicę identyfikatorów locale
- na podstawie informacji udostępnianych przez przeglądarkę użytkownika (jeśli
- jest dostępna), informacji pochodzących ze środowiska serwera hostingowego lub z
- ustawień Zend Framework. Pierwszy parametr określa preferencję źródła
- (<link linkend="zend.locale.selection">(<constant>BROWSER</constant>,
- <constant>ENVIRONMENT</constant>, or <code>FRAMEWORK</code></link>).
- Drugi parametr określa czy mają być zwrócone wszystkie locale wyszczególnione w
- źródle czy tylko pierwsze z nich. Komponenty świadome locale używają przeważnie
- jedynie pierwszego locale, w zależności od oceny ich preferencji (jeśli jest dostępna).
- </para>
- <example id="zend.locale.getdefault.example-1">
- <title>Zwrócenie domyślnego locale</title>
- <programlisting language="php"><![CDATA[
- $locale = new Zend_Locale();
- // Zwrócenie wszystkich domyślnych locale
- $found = $locale->getDefault();
- print_r($found);
- // Zwrócenie jedynie locale domyślnego dla przeglądarki
- $found2 = $locale->getDefault(Zend_Locale::BROWSER,TRUE);
- print_r($found2);
- ]]></programlisting>
- </example>
- <para>
- Aby uzyskać locale domyślne dla określonego źródła:
- <link linkend="zend.locale.selection"><constant>BROWSER</constant>,
- <constant>ENVIRONMENT</constant> lub <constant>FRAMEWORK</constant></link>, należy
- skorzystać z odpowiedniej metody:
- <itemizedlist>
- <listitem>
- <para>
- <methodname>getEnvironment()</methodname>
- </para>
- </listitem>
- <listitem>
- <para>
- <methodname>getBrowser()</methodname>
- </para>
- </listitem>
- </itemizedlist>
- </para>
- </sect2>
- <sect2 id="zend.locale.setlocale">
- <title>Ustawienie nowego locale</title>
- <para>
- Nowe locale może zostać ustawione za pomocą metody <methodname>setLocale()</methodname>.
- Przyjmuje ona łańcuch znaków identyfikatora locale jako parametr. Jeśli argument
- nie zostanie podany to nastąpi próba
- <link linkend="zend.locale.selection">automatycznego wyboru</link>.
- Ponieważ obiekty <classname>Zend_Locale</classname> są "lekkie" metoda ta istnieje
- głównie po to aby wykluczyć efekty uboczne w kodzie, który odnosi się do
- już istniejącej instancji.
- </para>
- <example id="zend.locale.setlocale.example-1">
- <title>Metoda setLocale()</title>
- <programlisting language="php"><![CDATA[
- $locale = new Zend_Locale();
- // Obecne locale
- print $locale->toString();
- // Nowe locale
- $locale->setLocale('aa_DJ');
- print $locale->toString();
- ]]></programlisting>
- </example>
- </sect2>
- <sect2 id="zend.locale.getlocale">
- <title>Zwrócenie języka i regionu</title>
- <para>
- Aby uzyskać skrót języka z identyfikatora locale należy skorzystać z metody
- <methodname>getLanguage()</methodname>. Do uzyskania skrótu regionu służy
- metoda <methodname>getRegion()</methodname>.
- </para>
- <example id="zend.locale.getlocale.example-1">
- <title>getLanguage oraz getRegion</title>
- <programlisting language="php"><![CDATA[
- $locale = new Zend_Locale();
- // jeśli locale to 'de_AT' wtedy 'de' zostanie zwrócone jako język
- print $locale->getLanguage();
- // jeśli locale to 'de_AT' wtedy 'AT' zostanie zwrócone region
- print $locale->getRegion();
- ]]></programlisting>
- </example>
- </sect2>
- <sect2 id="zend.locale.getdata">
- <title>Uzyskanie zlokalizowanych łańcuchów znaków</title>
- <para>
- Metoda <methodname>getTranslationList()</methodname> umożliwia dostęp do zlokalizowanych
- danych różnego rodzaju. Te informacje są przydatne jeśli zajdzie potrzeba
- zaprezentowania użytkownikowi zlokalizowanych danych. W takiej sytuacji nie ma
- potrzeby własnoręcznego tłumaczenia - odpowiednie dane są dostępne do użytku.
- </para>
- <para>
- Lista żądanych danych jest zawsze zwracana w postaci tablic asocjacyjnych.
- Jeśli istnieje potrzeba przekazania więcej niż jednego parametru do określonego
- typu, z którego chce się pobrać wartości to należy przekazać te parametry w
- postaci tablicy.
- </para>
- <example id="zend.locale.getdata.example-1">
- <title>getTranslationList</title>
- <programlisting language="php"><![CDATA[
- $list = Zend_Locale::getTranslationList('language', 'de_AT');
- print_r ($list);
- // przykładowe pary klucz -> wartość
- // [de] -> Deutsch
- // [en] -> Englisch
- // użycie jednego ze zwróconych kluczy jako parametru metody getTranslation()
- // dla innego języka
- print Zend_Locale::getTranslation('de', 'language', 'zh');
- // zwraca tłumaczenie nazwy języka określonego jako 'de' w języku chińskim
- ]]></programlisting>
- </example>
- <para>
- Podobne informacje można uzyskać dla wszystkich języków ale w niektórych przypadkach
- nie wszystkie dane są dostępne. Aby ułatwić dostęp do nich, pewne typy
- informacji są również dostępne poprzez dedykowane metody. Niżej znajduje
- się obszerniejszy opis.
- </para>
- <table id="zend.locale.getdata.table-1">
- <title>
- Szczegóły użycia metody getTranslationList($type = null, $locale = null, $value = null)
- </title>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Typ</entry>
- <entry>Opis</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry><emphasis>Language</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną listę wszystkich języków. Część identyfikatora
- locale wskazująca na język jest zwracana w kluczu a pełna nazwa w
- wartości
- </entry>
- </row>
- <row>
- <entry><emphasis>Script</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną listę systemów pisma. Identyfikator systemu
- zwracany jest w kluczu, przetłumaczona nazwa - w wartości
- </entry>
- </row>
- <row>
- <entry><emphasis>Territory</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną listę wszystkich terytoriów. Zawiera kraje,
- kontynenty i inne terytoria. Aby uzyskać jedynie terytoria i
- kontynenty należy przekazać jako wartość 1. Aby uzyskać kraje - 2.
- Tam gdzie jest to możliwe część locale wskazująca na kraj jest zwracana
- w kluczu, w pozostałych przypadkach podany jest oficjalny kod ISO
- danego terytorium. Przetłumaczona nazwa terytorium zwracana jest w
- wartości
- </entry>
- </row>
- <row>
- <entry><emphasis>Variant</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną listę odmian systemów pisma. Identyfikator odmiany
- w kluczu a przetłumaczona nazwa w wartości
- </entry>
- </row>
- <row>
- <entry><emphasis>Key</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną listę znanych kluczy. Są to generyczne wartości
- używane w tłumaczeniu. Są to kalendarz, sortowanie i waluta. W kluczu
- zwracany jest klucz a przetłumaczona nazwa w wartości
- </entry>
- </row>
- <row>
- <entry><emphasis>Type</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną listę typów kluczy. Są to rodzaje kalendarzy oraz
- porządków sortowania. Jeśli poda się parametr 'collation' to zostanie
- zwrócona lista porządków sortowania. Dla parametru 'calendar' -
- rodzajów kalendarzy. Jeśli parametr nie zostanie podany to lista
- zwrotna będzie zawierała oba rodzaje danych. Rodzaj jest podany w
- kluczu a przetłumaczona nazwa w wartości
- </entry>
- </row>
- <row>
- <entry><emphasis>Layout</emphasis></entry>
- <entry>
- Zwraca listę zasad formatowania specjalnych znaków
- tekstowych
- </entry>
- </row>
- <row>
- <entry><emphasis>Characters</emphasis></entry>
- <entry>Zwraca listę dozwolonych znaków w ramach danego locale</entry>
- </row>
- <row>
- <entry><emphasis>Delimiters</emphasis></entry>
- <entry>Zwraca listę dozwolonych znaków służących do umieszczania
- w cudzysłowiu dla danego locale</entry>
- </row>
- <row>
- <entry><emphasis>Measurement</emphasis></entry>
- <entry>
- Zwraca listę znanych jednostek miary. Lista jest nieaktualna
- </entry>
- </row>
- <row>
- <entry><emphasis>Months</emphasis></entry>
- <entry>
- Zwraca listę nazw miesięcy w danym locale. Zwracanych jest kilka
- różnych form reprezentacji miesięcy - każda w oddzielnej tablicy
- zagnieżdżonej. Jeśli nie poda się parametru to zostanie zwrócona pełna
- lista miesięcy z kalendarza gregoriańskiego. Można podać inną, znaną
- nazwę kalendarza aby uzyskać jego nazwy miesięcy.
- Z uwagi na prostotę można zamiast tego używać
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>Month</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną listę miesięcy. Bez podania parametru zwracana
- jest zwykła lista pełnych nazw miesięcy wg. kalendarza gregoriańskiego.
- Numer porządkowy miesiąca znajduje się w kluczu a przetłumaczona
- nazwa w wartości. Można uzyskać nazwy miesięcy z innego kalendarza
- jeśli poda się tablicę w parametrze. Pierwszą wartością tej tablicy
- powinna być nazwa kalendarza, drugą - kontekst, trzecią - szerokość
- zwracanych danych. Z uwagi na prostotę można zamiast tego używać
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>Days</emphasis></entry>
- <entry>
- Zwraca listę nazw dni tygodnia w danym locale. Zwracanych jest kilka
- różnych form reprezentacji dni - każda w oddzielnej tablicy
- zagnieżdżonej. Jeśli nie poda się parametru to zostanie zwrócona pełna
- lista dni tygodnia z kalendarza gregoriańskiego. Można podać inną, znaną
- nazwę kalendarza aby uzyskać jego nazwy dni tygodnia.
- Z uwagi na prostotę można zamiast tego używać
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>Day</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną listę dni tygodnia. Bez podania parametru zwracana
- jest zwykła lista pełnych nazw dni tygodnia wg. kalendarza
- gregoriańskiego ze skrótem angielskiej nazwy dnia tygodnia w kluczu
- i przetłumaczoną pełną nazwą dnia w wartości.
- Można uzyskać nazwy dni z innego kalendarza
- jeśli poda się tablicę w parametrze. Pierwszą wartością tej tablicy
- powinna być nazwa kalendarza, drugą - kontekst, trzecią - szerokość
- zwracanych danych. Z uwagi na prostotę można zamiast tego używać
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
-
- <row>
- <entry><emphasis>Week</emphasis></entry>
- <entry>
- Zwraca listę wartości używanych przy obliczeniach dotyczących wygodni
- w ramach danego locale. Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>Quarters</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną listę wszystkich nazw kwartałów dla podanego
- locale. Istnieje szereg różnych zestawów nazw kwartałów - każdy z nich
- zwracany jest w osobnej tablicy zagnieżdżonej.
- Jeśli w parametrze nie zostanie podana wartość to zwrócona
- lista będzie dotyczyć kalandarza gregoriańskiego. Można uzyskać
- listę dla innego systemu kalendarza jeśli przekaże się jego nazwę w
- parametrze.
- </entry>
- </row>
- <row>
- <entry><emphasis>Quarter</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną listę nazw kwartałów dla danego locale.
- Jeśli w parametrze nie zostanie podana wartość to zwrócona lista będzie
- dotyczyć kalandarza gregoriańskiego, gdzie numer porządkowy kwartału
- jest przechowywany w kluczu tablicy a przetłumaczona
- nazwa - w wartości. Można uzyskać listę dla innego systemu kalendarza
- jeśli przekaże się w parametrze tablicę zawierającą jego nazwę
- oraz szerokość łańcucha z nazwą żądanego kwartału.
- </entry>
- </row>
- <row>
- <entry><emphasis>Eras</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną listę wszystkich nazw er (okresów) dla podanego
- locale. Jeśli w parametrze nie zostanie podana wartość to zwrócona
- lista będzie dotyczyć kalandarza gregoriańskiego. Można uzyskać
- listę dla innego systemu kalendarza jeśli przekaże się jego nazwę w
- parametrze.
- </entry>
- </row>
- <row>
- <entry><emphasis>Era</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną listę nazw er (okresów) dla podanego locale.
- Jeśli w parametrze nie zostanie podana wartość to zwrócona lista będzie
- dotyczyć kalandarza gregoriańskiego, gdzie numer ery jest przechowywany
- w kluczu tablicy a przetłumaczona nazwa - w wartości. Można uzyskać
- listę dla innego systemu kalendarza jeśli przekaże się w parametrze
- tablicę zawierającą jego nazwę oraz szerokość łańcucha z nazwą żądanej
- ery.
- </entry>
- </row>
- <row>
- <entry><emphasis>Date</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną listę wszystkich znanych formatów daty dla
- podanego locale. Nazwa formatu jest umieszczona w kluczu tablicy a
- sam format - w wartości. Jeśli w parametrze nie zostanie podana
- wartość to zwrócona lista będzie
- dotyczyć kalandarza gregoriańskiego. Można uzyskać listę dla innego
- systemu kalendarza jeśli przekaże się jego nazwę w parametrze.
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Date</link>.
- </entry>
- </row>
- <row>
- <entry><emphasis>Time</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną listę wszystkich znanych formatów czasu dla
- podanego locale. Nazwa formatu jest umieszczona w kluczu tablicy a
- sam format - w wartości. Jeśli w parametrze nie zostanie podana
- wartość to zwrócona lista będzie
- dotyczyć kalandarza gregoriańskiego. Można uzyskać listę dla innego
- systemu kalendarza jeśli przekaże się jego nazwę w parametrze.
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Date</link>.
- </entry>
- </row>
- <row>
- <entry><emphasis>DateTime</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną listę wszystkich znanych formatów daty i czasu dla
- podanego locale. Nazwa formatu jest umieszczona w kluczu tablicy a
- sam format - w wartości. Jeśli w parametrze nie zostanie podana
- wartość to zwrócona lista będzie
- dotyczyć kalandarza gregoriańskiego. Można uzyskać listę dla innego
- systemu kalendarza jeśli przekaże się jego nazwę w parametrze.
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Date</link>.
- </entry>
- </row>
- <row>
- <entry><emphasis>DateItem</emphasis></entry>
- <entry>
- Zwraca listę domyślnych formatów dla danej części daty lub czasu
- </entry>
- </row>
- <row>
- <entry><emphasis>DateInterval</emphasis></entry>
- <entry>
- Zwraca listę formatów daty i czasu, które są używane w przypadku
- wyświetlania różnic dat. Zwracana lista to wielowymiarowa tablica,
- gdzie pierwszym wymiarem jest format, drugim - składnim formatu o
- największej różnicy.
- </entry>
- </row>
- <row>
- <entry><emphasis>Field</emphasis></entry>
- <entry>
- Zwraca listę zlokalizowanych nazw części daty, które mogą zostać użyte
- do wyświetlenia kalendarza lub wyrazów takich jak 'miesiąc' czy 'rok'
- w odpowiednim języku. Jeśli nie zostanie podana wartość to zwrócona
- lista będzie
- dotyczyć kalandarza gregoriańskiego. Można uzyskać listę dla innego
- systemu kalendarza jeśli przekaże się jego nazwę w parametrze
- </entry>
- </row>
- <row>
- <entry><emphasis>Relative</emphasis></entry>
- <entry>
- Zwraca listę zlokalizowanych określeń relatywnych dat, których można
- użyć do wyświetlenia zwrotów typu 'wczoraj' czy 'jutro' w odpowiednim
- języku. Jeśli nie zostanie podana wartość to zwrócona lista będzie
- dotyczyć kalandarza gregoriańskiego. Można uzyskać listę dla innego
- systemu kalendarza jeśli przekaże się jego nazwę w parametrze
- </entry>
- </row>
- <row>
- <entry><emphasis>Symbols</emphasis></entry>
- <entry>
- Zwraca listę zlokalizowanych znaków używanych przy formatowaniu liczb.
- </entry>
- </row>
- <row>
- <entry><emphasis>NameToCurrency</emphasis></entry>
- <entry>
- Zwraca listę zlokalizowanych nazw walut. Kod waluty jest umieszczony w
- kluczu tablicy a przeyłumaczona nazwa - w wartości. Dla uproszczenia
- można korzystać z
- <link linkend="zend.currency.introduction">Zend_Currency</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>CurrencyToName</emphasis></entry>
- <entry>
- Zwraca listę kodów walut wg. zlokalizowanych nazw walut. Przetłumaczona
- nazwa jest umieszczona w kluczu a kod waluty - w wartości. Dla
- uproszczenia można używać
- <link linkend="zend.currency.introduction">Zend_Currency</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>CurrencySymbol</emphasis></entry>
- <entry>
- Zwraca listę zlokalizowanych symboli walut. Kod waluty jest umieszczony
- w kluczu tablicy a symbol - w wartości. Dla uproszczenia można używać
- <link linkend="zend.currency.introduction">Zend_Currency</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>Question</emphasis></entry>
- <entry>
- Zwraca listę zlokalizowanych odpowiedzi oznaczających zgodę ('yes')
- oraz zaprzeczenie ('no'). Dla uproszczenia można używać
- <link linkend="zend.locale.getquestion">metody getQuestion</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>CurrencyFraction</emphasis></entry>
- <entry>
- Zwraca listę ilości miejsc po przecinku dla walut. Kod waluty
- jest umieszczony w kluczu tablicy a ilość miejsc po przecinku - w
- wartości. Dla uproszczenia można używać
- <link linkend="zend.currency.introduction">Zend_Currency</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>CurrencyRounding</emphasis></entry>
- <entry>
- Zwraca listę sposobów zaokrąglenia dla walut. Kod waluty
- jest umieszczony w kluczu tablicy a ilość miejsc po przecinku do
- zaokrąglenia - w wartości. Dla uproszczenia można używać
- <link linkend="zend.currency.introduction">Zend_Currency</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>CurrencyToRegion</emphasis></entry>
- <entry>
- Zwraca listę walut wg. regionu, w którym obowiązują. Kod regionu
- <constant>ISO3166</constant> jest umieszczony w kluczu tablicy a
- kod waluty <constant>ISO4217</constant> - w wartości.
- Dla uproszczenia można używać
- <link linkend="zend.currency.introduction">Zend_Currency</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>RegionToCurrency</emphasis></entry>
- <entry>
- Zwraca listę regionów wg. obowiązującej waluty. Kod waluty
- <constant>ISO4217</constant> umieszczony jest w kluczu tablicy a
- kod regionu <constant>ISO3166</constant> - w wartości. Jeśli dana
- waluta jest używana w wielu regionach to są one oddzielone spacją.
- Dla uproszczenia można używać
- <link linkend="zend.currency.introduction">Zend_Currency</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>RegionToTerritory</emphasis></entry>
- <entry>
- Zwraca listę terytoriów z krajami lub subterytoriami, które są zawarte
- w nich. Kod <acronym>ISO</acronym> terytorium jest używany jako klucz
- tablicy a kod <constant>ISO3166</constant> kraju/subterytorium - jako
- wartości. Jeśli terytorium zawiera więcej niż jedno
- państwo/subterytorium to są one oddzielone spacją.
- </entry>
- </row>
- <row>
- <entry><emphasis>TerritoryToRegion</emphasis></entry>
- <entry>
- Zwraca listę krajów lub subterytoriów z terytoriami w których są
- zawarte. Kod <constant>ISO3166</constant> kraju/subterytorium jest
- używany jako klucz tablicy a kod <acronym>ISO</acronym> terytorium -
- jako wartości. Jeśli państwo/subterytorium wchodzi w skład więcej niż
- jednego terytorium to są one oddzielone spacją.
- </entry>
- </row>
- <row>
- <entry><emphasis>ScriptToLanguage</emphasis></entry>
- <entry>
- Zwraca listę systemów pisma, jakie są używane w ramach języka. Kod
- języka jest umieszczony w kluczu tablicy a kod systemu pisma - w
- wartości. Jeśli język posługuje się wieloma systemami to są one
- oddzielone spacją.
- </entry>
- </row>
- <row>
- <entry><emphasis>LanguageToScript</emphasis></entry>
- <entry>
- Zwraca listę języków i systemów pisma, jakie są używane w jego ramach.
- Kod systemu jest umieszczony w kluczu tablicy a kod języka - w
- wartości. Jeśli system jest używany w wielu językach to są one
- oddzielone spacją.
- </entry>
- </row>
- <row>
- <entry><emphasis>TerritoryToLanguage</emphasis></entry>
- <entry>
- Zwraca listę państw używających określonego języka. Kod państwa jest
- umieszczany w kluczu tablicy a kod języka - w wartości. Jeśli dany
- język jest używany w więcej niż jednym państwie to zostają one
- oddzielone spacją.
- </entry>
- </row>
- <row>
- <entry><emphasis>LanguageToTerritory</emphasis></entry>
- <entry>
- Zwraca listę języków i państw używających określonego języka.
- Kod języka jest umieszczany w kluczu tablicy a kod państwa - w wartości.
- Jeśli dane państwo używa więcej niż jednego języka zostają one
- oddzielone spacją.
- </entry>
- </row>
- <row>
- <entry><emphasis>TimezoneToWindows</emphasis></entry>
- <entry>
- Zwraca listę stref czasowych windows i odpowiadających im stref
- czasowych <acronym>ISO</acronym>. Strefa windows jest umieszczona w
- kluczu a strefa <acronym>ISO</acronym> - w wartości.
- </entry>
- </row>
- <row>
- <entry><emphasis>WindowsToTimezone</emphasis></entry>
- <entry>
- Zwraca listę stref czasowych <acronym>ISO</acronym> i odpowiadających
- im stref czasowych windows. Strefa <acronym>ISO</acronym> jest
- umieszczona w kluczu a strefa windows - w wartości.
- </entry>
- </row>
- <row>
- <entry><emphasis>TerritoryToTimezone</emphasis></entry>
- <entry>
- Zwraca listę terytoriów i związanych z nimi stref czasowych
- <acronym>ISO</acronym>. Strefa czasowa jest umieszczona w kluczu a
- kod terytorium (regionu) - w wartości.
- </entry>
- </row>
- <row>
- <entry><emphasis>TimezoneToTerritory</emphasis></entry>
- <entry>
- Zwraca listę stref czasowych <acronym>ISO</acronym> i związanych z nimi
- terytoriów. Kod terytorium (regionu) jest umieszczony w kluczu a
- strefa czasowa - w wartości.
- </entry>
- </row>
- <row>
- <entry><emphasis>CityToTimezone</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną listę nazw miast, które mogą zostać użyte przy
- tłumaczeniu nazw stref czasowych. Lista nie jest dostępna dla
- wszystkich stref ale dla użytkownika może być ważniejsze wyszukanie
- przetłumaczonej nazwy konkretnego miasta niż nazwy
- <acronym>ISO</acronym> strefy czasowej. Nazwa <acronym>ISO</acronym>
- strefy jest umieszczona w kluczu a
- przetłumaczona nazwa miasta - w wartości.
- </entry>
- </row>
- <row>
- <entry><emphasis>TimezoneToCity</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną listę nazw nazw stref czasowych i przetłumaczonych
- nazw miast. Miasto jest umieszczone w kluczu a strefa czasowa
- <acronym>ISO</acronym> - w wartości.
- </entry>
- </row>
- <row>
- <entry><emphasis>PhoneToTerritory</emphasis></entry>
- <entry>
- Zwraca listę telefonicznych kodów kierunkowych i terytoriów w których
- obowiązują. Nazwa terytorium (regionu) umieszczona jest w kluczu a
- kod kierunkowy - w wartości.
- </entry>
- </row>
- <row>
- <entry><emphasis>TerritoryToPhone</emphasis></entry>
- <entry>
- Zwraca listę terytoriów i ich telefonicznych kodów kierunkowych.
- Kod jest umieszczony
- w kluczu tablicy a nazwa terytorium (regionu) - w wartości. Jeśli dany
- kod jest używany w więcej niż jednym regionie są one oddzielone spacją.
- </entry>
- </row>
- <row>
- <entry><emphasis>NumericToTerritory</emphasis></entry>
- <entry>
- Zwraca listę 3-cyfrowych kodów odpowiadających terytoriom. Terytorium
- (region) jest umieszczany w kluczu a 3-cyfrowy kod - w wartości.
- </entry>
- </row>
- <row>
- <entry><emphasis>TerritoryToNumeric</emphasis></entry>
- <entry>
- Zwraca listę terytoriów z ich 3-cyfrowym kodem. 3-cyfrowy kod jest
- umieszczony w kluczu a nazwa terytorium (regionu) w wartości.
- </entry>
- </row>
- <row>
- <entry><emphasis>Alpha3ToTerritory</emphasis></entry>
- <entry>
- Zwraca listę 3-literowych kodów odpowiadających terytoriom. Terytorium
- (region) jest umieszczany w kluczu a 3-literowy kod - w wartości.
- </entry>
- </row>
- <row>
- <entry><emphasis>TerritoryToAlpha3</emphasis></entry>
- <entry>
- Zwraca listę terytoriów z ich 3-literowym kodem. 3-literowy kod jest
- umieszczony w kluczu a nazwa terytorium (regionu) w wartości.
- </entry>
- </row>
- <row>
- <entry><emphasis>PostalToTerritory</emphasis></entry>
- <entry>
- Zwraca listę terytoriów z wyrażeniem regularnym sprawdzającym poprawność
- kodu pocztowego w danym terytorium. Kod <acronym>ISO</acronym>
- terytorium jest umieszczony w kluczu z regex - w wartości.
- </entry>
- </row>
- <row>
- <entry><emphasis>NumberingSystem</emphasis></entry>
- <entry>
- Zwraca listę systemów pisma z cyframi używanymi w danym systemie.
- </entry>
- </row>
- <row>
- <entry><emphasis>FallbackToChar</emphasis></entry>
- <entry>
- Zwraca listę znaków specjalnych i ich odpowiedników w unikode. Dzięki
- temu moża np. zamienić "©" na "(C)".
- </entry>
- </row>
- <row>
- <entry><emphasis>CharToFallback</emphasis></entry>
- <entry>
- Zwraca listę znaków unicode dla często zastępowanych znaków. Dzięki
- temu można np. zamienić "(C)" na "©"
- </entry>
- </row>
- <row>
- <entry><emphasis>LocaleUpgrade</emphasis></entry>
- <entry>
- Zwraca listę zależności locale, co może zostać wykorzystane do
- rozwinięcia podanego języka do pełnego identyfikatora locale
- </entry>
- </row>
- <row>
- <entry><emphasis>Unit</emphasis></entry>
- <entry>
- Zwraca listę zlokalizowanych jednostek kalendarzowych. Dzięki temu można
- automatycznie przetłumaczyć łańcuchy takie jak "day", "month" itp.
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- <para>
- Jeśli potrzebna jest pojedyncza przetłumaczona wartość można skorzystać z metody
- <methodname>getTranslation()</methodname>. Zawsze zwracany jest łańcuch znaków zaś
- przyjmowane argumenty są różne od tych przyjmowanych przez
- <methodname>getTranslationList()</methodname>.
- Parametr wartości jest taki sam jak wcześniej z jedną różnicą - identyfikator
- żądanego detalu musi zostać przekazany jako dodatkowy parametr.
- </para>
- <note>
- <para>
- Ponieważ wartość prawie zawsze musi być przekazana to staje się ona pierwszym
- parametrem. Jest to różnica w stosunku do metody
- <methodname>getTranslationList()</methodname>.
- </para>
- </note>
- <para>
- Poniżej przedstawiono tabelę zawierającą bardziej szczegółowe informacje:
- </para>
- <table id="zend.locale.getdata.table-2">
- <title>
- Szczegóły użycia metody getTranslation($value = null, $type = null, $locale = null)
- </title>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Typ</entry>
- <entry>Opis</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry><emphasis>Language</emphasis></entry>
- <entry>
- Zwraca tłumaczenie nazwy języka. Aby uzyskać żądane tłumaczenie należy
- w parametrze wartości przekazać kod języka
- </entry>
- </row>
- <row>
- <entry><emphasis>Script</emphasis></entry>
- <entry>
- Zwraca tłumaczenie nazwy systemu pisma. Aby uzyskać żądane
- tłumaczenie należy w parametrze wartości przekazać kod systemu pisma
- </entry>
- </row>
- <row>
- <entry>
- <emphasis>Territory</emphasis> lub <emphasis>Country</emphasis>
- </entry>
- <entry>
- Zwraca tłumaczenie nazwy terytorium. Mogą to być kraje, kontynenty
- i inne terytoria. Aby uzyskać żądane tłumaczenie należy w parametrze
- wartości przekazać kod terytorium
- </entry>
- </row>
- <row>
- <entry><emphasis>Variant</emphasis></entry>
- <entry>
- Zwraca tłumaczenie nazwy odmiany systemu pisma. Aby uzyskać żądane
- tłumaczenie należy w parametrze wartości przekazać kod żądanej odmiany
- </entry>
- </row>
- <row>
- <entry><emphasis>Key</emphasis></entry>
- <entry>
- Zwraca tłumaczenie nazw znanych kluczy. Są to generyczne wartości
- używane w tłumaczeniach oznaczające system kalendarza, porządek
- sortowania, walutę. Aby uzyskać żądane tłumaczenie należy w
- parametrze wartości przekazać kod klucza
- </entry>
- </row>
- <row>
- <entry><emphasis>DefaultCalendar</emphasis></entry>
- <entry>
- Zwraca domyślny system kalendarza dla podanego locale. Dla większości
- będzie to 'gregorian'. Dla uproszczenia można używać
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>MonthContext</emphasis></entry>
- <entry>
- Zwraca domyślny kontekst miesięcy, który jest używany w ramach podanego
- systemu kalendarza. Jeśli nie poda się nazwy kalendarza to zostanie
- użyta domyślna nazwa - 'gregorian'. Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>DefaultMonth</emphasis></entry>
- <entry>
- Zwraca domyślny format miesięcy, który jest używany w ramach podanego
- systemu kalendarza. Jeśli nie poda się nazwy kalendarza to zostanie
- użyta domyślna nazwa - 'gregorian'. Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>Month</emphasis></entry>
- <entry>
- Zwraca tłumaczenie nazwy miesiąca. Należy podać numer miesiąca w postaci
- liczby (w zakresie 1-12). Jeśli występuje potrzeba pobrania danych dla
- innego kalendarza, kontekstu czy formatu to przekazany argument musi
- być tablicą zawierającą oczekiwane dane. Tablica musi mieć następującą
- strukturę:
- <code>array( 'calendar', 'context', 'format', 'month number')</code>.
- W przypadku podania jedynie numeru miesiąca domyślnymi wartościami
- są kalendarz - 'gregorian', contekst - 'format', format - 'wide'.
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>DayContext</emphasis></entry>
- <entry>
- Zwraca domyślny kontekst dni, który jest używany w ramach podanego
- systemu kalendarza. Jeśli nie poda się nazwy kalendarza to zostanie
- użyta domyślna nazwa - 'gregorian'. Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>DefaultDay</emphasis></entry>
- <entry>
- Zwraca domyślny format dni, który jest używany w ramach podanego
- systemu kalendarza. Jeśli nie poda się nazwy kalendarza to zostanie
- użyta domyślna nazwa - 'gregorian'. Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>Day</emphasis></entry>
- <entry>
- Zwraca tłumaczenie nazwy dnia tygodnia. Należy podać angielski skrót
- żądanego dnia tygodnia w postaci łańcucha znaków ('sun', 'mon', itp.).
- Jeśli występuje potrzeba pobrania danych dla
- innego kalendarza, kontekstu czy formatu to przekazany argument musi
- być tablicą zawierającą oczekiwane dane. Tablica musi mieć następującą
- strukturę:
- <code>array( 'calendar', 'context', 'format','day abbreviation')</code>.
- W przypadku podania jedynie skrótu dnia domyślnymi wartościami
- są kalendarz - 'gregorian', contekst - 'format', format - 'wide'.
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
-
-
- <row>
- <entry><emphasis>Quarter</emphasis></entry>
- <entry>
- Zwraca tłumaczenie nazwy kwartału. Należy podać numer kwartału w postaci
- liczby całkowitej (w zakresie 1-4).
- Jeśli występuje potrzeba pobrania danych dla
- innego kalendarza, kontekstu czy formatu to przekazany argument musi
- być tablicą zawierającą oczekiwane dane. Tablica musi mieć następującą
- strukturę:
- <code>array( 'calendar', 'context', 'format','quarter number')</code>.
- W przypadku podania jedynie numeru kwartału domyślnymi wartościami
- są kalendarz - 'gregorian', contekst - 'format', format - 'wide'
- </entry>
- </row>
- <row>
- <entry><emphasis>Am</emphasis></entry>
- <entry>
- Zwraca tłumaczenie 'AM' dla podanego locale. Jeśli występuje potrzeba
- pobrania danych dla innego kalendarza, należy podać jego nazwę w
- argumencie. Bez podania nazwy zostanie użyty kalendarz gregoriański.
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>Pm</emphasis></entry>
- <entry>
- Zwraca tłumaczenie 'AM' dla podanego locale. Jeśli występuje potrzeba
- pobrania danych dla innego kalendarza, należy podać jego nazwę w
- argumencie. Bez podania nazwy zostanie użyty kalendarz gregoriański.
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>Era</emphasis></entry>
- <entry>
- Zwraca tłumaczenie nazwy ery. Należy podać numer ery w postaci
- liczby całkowitej. Jeśli występuje potrzeba pobrania danych dla
- innego kalendarza czy formatu to przekazany argument musi
- być tablicą zawierającą oczekiwane dane. Tablica musi mieć następującą
- strukturę:
- <code>array('calendar', 'format','era number')</code>.
- W przypadku podania jedynie numeru kwartału domyślnymi wartościami
- są kalendarz - 'gregorian', format - 'abbr'
- </entry>
- </row>
- <row>
- <entry><emphasis>DefaultDate</emphasis></entry>
- <entry>
- Zwraca domyślny format daty używany w ramach danego kalendarza.
- Bez podania nazwy zostanie użyty kalendarz gregoriański.
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>Date</emphasis></entry>
- <entry>
- Zwraca format daty dla danego kalendarza lub format w ramach locale.
- Bez podania nazwy zostanie użyty kalendarz gregoriański z formatem
- 'medium'. Jeśli zostanie podana nazwa w łańcuchu wtedy użyty będzie
- kalendarz gregoriański z formatem o podanej nazwie. Można podać również
- tablicę o strukturze:
- <methodname>array('calendar','format')</methodname>.
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>DefaultTime</emphasis></entry>
- <entry>
- Zwraca domyślny format czasu w ramach danego kalendarza.
- Bez podania nazwy zostanie użyty kalendarz gregoriański.
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>Time</emphasis></entry>
- <entry>
- Zwraca format czasu dla danego kalendarza lub format w ramach locale.
- Bez podania nazwy zostanie użyty kalendarz gregoriański z formatem
- 'medium'. Jeśli zostanie podana nazwa w łańcuchu wtedy użyty będzie
- kalendarz gregoriański z formatem o podanej nazwie. Można podać również
- tablicę o strukturze:
- <methodname>array('calendar','format')</methodname>.
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>DateTime</emphasis></entry>
- <entry>
- Zwraca format daty i czasu dla danego locale, co wskazuje na sposób
- reprezentowania daty z czasem w jednym łańcuchu znaków w ramach
- danego kalendarza. Bez podania nazwy zostanie użyty kalendarz
- gregoriański. Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>DateItem</emphasis></entry>
- <entry>
- Zwraca domyślny format dla podanej części daty lub czasu
- </entry>
- </row>
- <row>
- <entry><emphasis>DateInterval</emphasis></entry>
- <entry>
- Zwraca format różnicy dla podanego formatu daty lub czasu. Pierwszą
- wartością jest nazwa kalendarza, przeważnie 'gregorian'. Drugą
- wartością format daty lub czasu a trzecią - część formatu o największej
- różnicy. Dla przykładu: array('gregorian', 'yMMMM', 'y') zwróci
- format różnicy dla formatu daty 'yMMMM' gdzie 'y' ma największą różnicę.
- </entry>
- </row>
- <row>
- <entry><emphasis>Field</emphasis></entry>
- <entry>
- Zwraca zlokalizowany element daty, co może zostać wykorzystane do
- wyświetlania łańcuchów takich jak 'miesiąc' czy 'rok' przetłumaczonych
- na podany język. Element, który ma zostać przetłumaczony musi być
- podany w argumencie. Domyślnie użyty będzie kalendarz gregoriański.
- Aby skorzystać z innego systemu kalendarza należy podać tablicę o
- poniższej strukturze:
- <methodname>array('calendar', 'date field')</methodname>
- </entry>
- </row>
- <row>
- <entry><emphasis>Relative</emphasis></entry>
- <entry>
- Zwraca przetłumaczoną, relatywną datę w stosunku do obecnej chwili.
- Wynik może zawierać łańcuchy znaków takie jak 'wczoraj' czy 'jutro'
- w podanym języku. W argumencie należy podać ilość dni w stosunku
- do bieżącego dnia. Dla dnia poprzedniego będzie to '-1', dla
- następnego - '1' itp. Domyślnie użyty będzie kalendarz gregoriański.
- Aby skorzystać z innego systemu kalendarza należy podać tablicę o
- poniższej strukturze:
- <methodname>array('calendar', 'relative days')</methodname>
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Date</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>DecimalNumber</emphasis></entry>
- <entry>
- Zwraca format liczb dziesiętnych obowiązujący w danym locale.
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Locale_Format</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>ScientificNumber</emphasis></entry>
- <entry>
- Zwraca naukowy format liczb obowiązujący w danym locale
- </entry>
- </row>
- <row>
- <entry><emphasis>PercentNumber</emphasis></entry>
- <entry>
- Zwraca format liczb procentowych obowiązujący w danym locale
- </entry>
- </row>
- <row>
- <entry><emphasis>CurrencyNumber</emphasis></entry>
- <entry>
- Zwraca format używany do reprezentacji kwot walut obowiązujący
- w danym locale. Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Currency</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>NameToCurrency</emphasis></entry>
- <entry>
- Zwraca przetłumaczoną nazwę podanej waluty. Waluta musi być podana w
- formacie <acronym>ISO</acronym>. Np.: 'EUR' dla waluty 'euro'.
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Currency</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>CurrencyToName</emphasis></entry>
- <entry>
- Zwraca walutę dla podanej zlokalizowanej nazwy
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Currency</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>CurrencySymbol</emphasis></entry>
- <entry>
- Zwraca symbol waluty używanej w ramach podanego locale. Nie wszystkie
- waluty mają swój symbol. Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Currency</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>Question</emphasis></entry>
- <entry>
- Zwraca zlocalizowane łańcuchy znaków oznaczające potwierdzenie lub
- zaprzeczenie. Należy podać 'yes' lub 'no' jako parametr aby otrzymać
- odpowiednie tłumaczenie. Dla uproszczenia można korzystać z
- <link linkend="zend.locale.getquestion">Zend_Locale::getQuestion</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>CurrencyFraction</emphasis></entry>
- <entry>
- Zwraca część składową danej waluty. Waluta musi być podana w
- formacie <acronym>ISO</acronym>. Np.: 'EUR' dla waluty 'euro'.
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Currency</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>CurrencyRounding</emphasis></entry>
- <entry>
- Zwraca format zaokrąglenia danej waluty. Waluta musi być podana w
- formacie <acronym>ISO</acronym>. Np.: 'EUR' dla waluty Euro. Jeśli
- nie poda się nazwy to zostanie użyte zaokrąglenie 'DEFAULT'.
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Currency</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>CurrencyToRegion</emphasis></entry>
- <entry>
- Zwraca walutę dla podanego regionu. Kod regionu musi być podany w formie
- łańcucha znaków <constant>ISO3166</constant>. Np.: 'AT' dla Austrii.
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Currency</link>
- </entry>
- </row>
- <row>
- <entry><emphasis>RegionToCurrency</emphasis></entry>
- <entry>
- Zwraca listę regionów, gdzie dana waluta jest używana. Kod waluty
- musi być podany w formie łańcucha znaków <constant>ISO4217</constant>.
- Np.: 'EUR' dla Euro. Jeśli waluta jest używana w wielu regionach to
- zostaną one oddzielone spacją.
- Dla uproszczenia można korzystać z
- <link linkend="zend.date.introduction">Zend_Currency</link>
- </entry>
- </row>
-
- <row>
- <entry><emphasis>RegionToTerritory</emphasis></entry>
- <entry>
- Zwraca listę regionów danego terytorium. Terytorium powinno być podane
- jako łańcuch znaków standardu <constant>ISO4217</constant> (np. '001'
- oznacza 'cały świat'). Nazwy zwracanych regionów są oddzielone spacją
- </entry>
- </row>
- <row>
- <entry><emphasis>TerritoryToRegion</emphasis></entry>
- <entry>
- Zwraca terytoria lokalizacji podanego regionu. Region powinien być
- podany jako łańcuch znaków standardu <constant>ISO3166</constant>
- (np. 'AT' - Austria). Jeśli region rozciąga się na wiele terytoriów
- to ich nazwy oddzielone są spacją
- </entry>
- </row>
- <row>
- <entry><emphasis>ScriptToLanguage</emphasis></entry>
- <entry>
- Zwraca systemy pisma używane w ramach danego locale. Język musi być
- podany w formie kodu <acronym>ISO</acronym> (np. 'en' - angielski).
- Jeśli dany język używa więcej niż jednego systemu pisma to ich nazwy
- oddzielone są spacją
- </entry>
- </row>
- <row>
- <entry><emphasis>LanguageToScript</emphasis></entry>
- <entry>
- Zwraca języki używające danego systemu pisma. System pisma musi być
- podany w formie kodu <acronym>ISO</acronym> (np. 'Latn' - Łacina).
- Jeśli systemu pisma jest używany przez więcej niż jeden język to ich
- nazwy oddzielone są spacją
- </entry>
- </row>
- <row>
- <entry><emphasis>TerritoryToLanguage</emphasis></entry>
- <entry>
- Zwraca terytoria gdzie dany język jest używany. Język musi być
- podany w formie kodu <acronym>ISO</acronym> (np. 'en' - angielski).
- Jeśli dany język jest używany przez więcej niż jedno terytorium
- to ich nazwy oddzielone są spacją
- </entry>
- </row>
- <row>
- <entry><emphasis>LanguageToTerritory</emphasis></entry>
- <entry>
- Zwraca listę języków danego terytorium. Terytorium powinno być podane
- jako łańcuch znaków standardu <constant>ISO3166</constant> (np. 'IT'
- oznacza Włochy). Jeśli na danym terytorium używa się więcej niż
- jednego języka to ich nazwy oddzielone są spacją
- </entry>
- </row>
- <row>
- <entry><emphasis>TimezoneToWindows</emphasis></entry>
- <entry>
- Zwraca strefę czasową <acronym>ISO</acronym> odpowiadającą strefie
- czasowej Windows
- </entry>
- </row>
- <row>
- <entry><emphasis>WindowsToTimezone</emphasis></entry>
- <entry>
- Zwraca strefę czasową Windows odpowiadającą strefie
- czasowej <acronym>ISO</acronym>
- </entry>
- </row>
- <row>
- <entry><emphasis>TerritoryToTimezone</emphasis></entry>
- <entry>
- Zwraca terytorium odpowiadające danej strefie czasowej
- <acronym>ISO</acronym>
- </entry>
- </row>
- <row>
- <entry><emphasis>TimezoneToTerritory</emphasis></entry>
- <entry>
- Zwraca strefę czasową <acronym>ISO</acronym> odpowiadającą danemu
- terytorium
- </entry>
- </row>
- <row>
- <entry><emphasis>CityToTimezone</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną nazwę miasta odpowiadającą danej strefie czasowej
- <acronym>ISO</acronym>. Nie wszystkie strefy mają przypisaną
- przetłumaczoną nazwę miasta
- </entry>
- </row>
- <row>
- <entry><emphasis>TimezoneToCity</emphasis></entry>
- <entry>
- Zwraca strefę czasową <acronym>ISO</acronym> odpowiadającą podanej,
- zlokalizowanej nazwie miasta. Nie wszystkie miasta mają przypisaną
- strefę czasową
- </entry>
- </row>
- <row>
- <entry><emphasis>PhoneToTerritory</emphasis></entry>
- <entry>
- Zwraca kod telefoniczny odpowiadający podanemu terytorium (regionowi).
- Kod terytorium musi być podany w standardzie
- <constant>ISO3166</constant> (np. 'AT' - Austria)
- </entry>
- </row>
- <row>
- <entry><emphasis>TerritoryToPhone</emphasis></entry>
- <entry>
- Zwraca terytorium (region) na którym obowiązuje podany kod telefoniczny.
- Kod musi być podany w postaci cyfr (np. '43' zamiast '+43'). Jeśli
- dany kod jest używany na wielu terytoriach to ich nazwy oddzielone są
- spacją
- </entry>
- </row>
- <row>
- <entry><emphasis>NumericToTerritory</emphasis></entry>
- <entry>
- Zwraca 3-cyfrowy kod podanego terytorium (regionu). Nazwa terytorium
- musi być podana w standardzie <constant>ISO3166</constant> (np. 'AT'
- oznacza Austrię)
- </entry>
- </row>
- <row>
- <entry><emphasis>TerritoryToNumeric</emphasis></entry>
- <entry>
- Zwraca terytorium (region) odpowiadający podanemu 3-cyfrowemu kodowi.
- Kod musi być podany w postaci samych cyfr (np. '43')
- </entry>
- </row>
- <row>
- <entry><emphasis>Alpha3ToTerritory</emphasis></entry>
- <entry>
- Zwraca 3-znakowy kod podanego terytorium (regionu). Nazwa terytorium
- musi być podana w standardzie <constant>ISO3166</constant> (np. 'AT'
- dla Austrii)
- </entry>
- </row>
- <row>
- <entry><emphasis>TerritoryToAlpha3</emphasis></entry>
- <entry>
- Zwraca terytorium (region) odpowiający danemu 3-znakowemu kodowi
- </entry>
- </row>
- <row>
- <entry><emphasis>PostalToTerritory</emphasis></entry>
- <entry>
- Zwraca wzór wyrażenia regularnego odpowiadającego kodowi pocztowemu
- dla podanego terytorium. Nazwa terytorium musi być podana w standardzie
- <constant>ISO4217</constant> (np. '001' - Świat)
- </entry>
- </row>
- <row>
- <entry><emphasis>NumberingSystem</emphasis></entry>
- <entry>
- Zwraca znaki oznaczające cyfry w ramach podanego systemu pisma
- </entry>
- </row>
- <row>
- <entry><emphasis>FallbackToChar</emphasis></entry>
- <entry>
- Zwraca znaki zastępujące często używany specjalny znak unicode. Można
- tego użyć do zastąpienia "©" za pomocą "(C)"
- </entry>
- </row>
- <row>
- <entry><emphasis>CharToFallback</emphasis></entry>
- <entry>
- Zwraca specjalny znak unicode dla podanego łańcucha zastępującego.
- Można tego użyć do zastąpienia "(C)" za pomocą "©"
- </entry>
- </row>
- <row>
- <entry><emphasis>LocaleUpgrade</emphasis></entry>
- <entry>
- Zwraca nazwę zależnego locale, dla locale podanego. Dzięki temu można
- uzyskać pełną nazwę poprawnego locale
- </entry>
- </row>
- <row>
- <entry><emphasis>Unit</emphasis></entry>
- <entry>
- Zwraca zlokalizowaną nazwę jednostki kalendarza. Dzięki temu można
- automatycznie uzyskać tłumaczenie łańcuchów "dzień", "miesiąc" itp.
- Pierwszym parametrem musi być typ a drugim - liczba
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- <note>
- <para>
- Z nadejściem Zend Framework 1.5 wiele starszych typów zostało przemianowanych.
- Zostało to wymuszone przez wprowadzenie szeregu nowych typów i występowanie błędów
- w starych nazwach. Zmiany te zwiąkszają użyteczność powyższych metod. Poniżej
- znajduje się lista zmian:
- </para>
- </note>
- <table id="zend.locale.getdata.table-3">
- <title>Różnica pomiędzy Zend Framework 1.0 oraz 1.5</title>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Stary typ</entry>
- <entry>Nowy typ</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>Country</entry>
- <entry>Territory (z wartością '2')</entry>
- </row>
- <row>
- <entry>Calendar</entry>
- <entry>Type (z wartością 'calendar')</entry>
- </row>
- <row>
- <entry>Month_Short</entry>
- <entry>Month (z tablicą array('gregorian', 'format', 'abbreviated')</entry>
- </row>
- <row>
- <entry>Month_Narrow</entry>
- <entry>Month (z tablicą array('gregorian', 'stand-alone', 'narrow')</entry>
- </row>
- <row>
- <entry>Month_Complete</entry>
- <entry>Months</entry>
- </row>
- <row>
- <entry>Day_Short</entry>
- <entry>Day (z tablicą array('gregorian', 'format', 'abbreviated')</entry>
- </row>
- <row>
- <entry>Day_Narrow</entry>
- <entry>Day (z tablicą array('gregorian', 'stand-alone', 'narrow')</entry>
- </row>
- <row>
- <entry>DateFormat</entry>
- <entry>Date</entry>
- </row>
- <row>
- <entry>TimeFormat</entry>
- <entry>Time</entry>
- </row>
- <row>
- <entry>Timezones</entry>
- <entry>CityToTimezone</entry>
- </row>
- <row>
- <entry>Currency</entry>
- <entry>NameToCurrency</entry>
- </row>
- <row>
- <entry>Currency_Sign</entry>
- <entry>CurrencySymbol</entry>
- </row>
- <row>
- <entry>Currency_Detail</entry>
- <entry>CurrencyToRegion</entry>
- </row>
- <row>
- <entry>Territory_Detail</entry>
- <entry>TerritoryToRegion</entry>
- </row>
- <row>
- <entry>Language_Detail</entry>
- <entry>LanguageToTerritory</entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- <para>
- Poniższy przykład pokazuje sposób pozyskania określonych nazw w żądanym języku.
- </para>
- <example id="zend.locale.getdata.example-3">
- <title>getTranslationList</title>
- <programlisting language="php"><![CDATA[
- // wyświetla nazwy wszystkich krajów w języku niemieckim
- print_r(Zend_Locale::getTranslationList('country', 'de'));
- ]]></programlisting>
- </example>
- <para>
- Następny przykład pokazuje sposób odnalezienia nazwy locale w innym języku, jeśli
- nieznany jest kod iso kraju.
- </para>
- <example id="zend.locale.getdata.example-4">
- <title>Zamiana nazwy kraju z jednego języka na drugi</title>
- <programlisting language="php"><![CDATA[
- $code2name = Zend_Locale::getLanguageTranslationList('en_US');
- $name2code = array_flip($code2name);
- $frenchCode = $name2code['French'];
- echo Zend_Locale::getLanguageTranslation($frenchCode, 'de_AT');
- // na wyjściu znajduje się nazwa języka francuskiego po niemiecku
- ]]></programlisting>
- </example>
- <para>
- Aby wygenerować listę wszystkich języków znanych przez
- <classname>Zend_Locale</classname>, z każdą nazwą w oryginalnej formie można skorzystać
- z poniższego przykładu. Podobnie metody
- <methodname>getCountryTranslationList()</methodname> oraz
- <methodname>getCountryTranslation()</methodname> mogą zostać użyte do utworzenia tabeli
- mapującej nazwy regionów w języku użytkownika do nazw regionów w innym języku.
- Aby wyłapać wyjątki spowodowane przez nieistniejące locale należy użyć konstrukcji
- <code>try .. catch</code>.
- Nie wszystkie języki stanowią locale. W poniższym przykładzie wyjątki są ignorowane
- aby zapobiec przedwczesnemu zakończeniu skryptu.
- </para>
- <example id="zend.locale.getdata.example-6">
- <title>Nazwy wszystkich języków w oryginalnym brzmieniu</title>
- <programlisting language="php"><![CDATA[
- $list = Zend_Locale::getLanguageTranslationList('auto');
- foreach($list as $language => $content) {
- try {
- $output = Zend_Locale::getLanguageTranslation($language, $language);
- if (is_string($output)) {
- print "\n<br>[".$language."] ".$output;
- }
- } catch (Exception $e) {
- continue;
- }
- }
- ]]></programlisting>
- </example>
- </sect2>
- <sect2 id="zend.locale.getquestion">
- <title>Uzyskanie tłumaczenia dla "yes" oraz "no"</title>
- <para>
- Często może dochodzić do sytuacji, w której niezbędne jest uzyskanie od użytkownika
- odpowiedzi "tak" lub "nie". Aby uzyskać tablicę zawierającą odpowiednie słowa
- lub wyrażenia regularne w zależności od określonego locale (domyślnie jest to locale
- bieżącego obiektu) należy użyć metody <methodname>getQuestion()</methodname>. Tablica
- zwrotna zawiera następujące dane:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- <emphasis>yes and no</emphasis>: Generyczny łańcuch znaków z odpowiedziami
- oznaczającymi zgodę oraz odmowę. Będzie to najprostrzy element tablicy
- yesarray oraz noarray.
- </para>
- <para>
- <emphasis>yesarray and noarray</emphasis>: Tablica ze wszystkimi znanymi
- odpowiedziami oznaczającymi zgodę oraz odmowę. Wiele języków posiada więcej niż
- jeden zesttaw odpowiedzi. Generalnie zawarte są tu pełne odpowiedzi oraz skróty.
- </para>
- <para>
- <emphasis>yesexpr and noexpr</emphasis>: Wyrażenie regularne ułatwiające
- odpowiednie zakwalifikowanie odpowiedzi dostarczonej przez użytkownika oraz
- wyszukanie odpowiedzi oznaczających zgodę oraz odmowę.
- </para>
- </listitem>
- </itemizedlist>
- <para>
- Wszystkie powyższe informacje są zlokalizowane. Poniższy przykład przedstawia zestaw
- danych, jakie można otrzymać:
- </para>
- <example id="zend.locale.getquestion.example-1">
- <title>getQuestion()</title>
- <programlisting language="php"><![CDATA[
- $locale = new Zend_Locale();
- // Łańcuchy ze zgodą oraz odmową
- print_r($locale->getQuestion('de'));
- - - - Output - - -
- Array
- (
- [yes] => ja
- [no] => nein
- [yesarray] => Array
- (
- [0] => ja
- [1] => j
- )
- [noarray] => Array
- (
- [0] => nein
- [1] => n
- )
- [yesexpr] => ^([jJ][aA]?)|([jJ]?)
- [noexpr] => ^([nN]([eE][iI][nN])?)|([nN]?)
- )
- ]]></programlisting>
- </example>
- <note>
- <para>
- Do wersji 1.0.3 była dostępna również tablica <emphasis>yesabbr</emphasis>.
- Od 1.5 te informacje nie są dostępne bezpośrednio ale można je odnaleźć w
- <emphasis>yesarray</emphasis>.
- </para>
- </note>
- </sect2>
- <sect2 id="zend.locale.getlocalelist">
- <title>Uzyskanie listy wszystkich znanych locale</title>
- <para>
- Może nastąpić sytuacja w której niezbędne okaże się uzyskanie listy wszystkich znanych
- locale. Może to być użyteczne przy wielu czynnościach jak np. utworzenie listy wyboru.
- Aby to osiągnąć należy użyć statycznej metody <methodname>getLocaleList()</methodname>.
- </para>
- <example id="zend.locale.getlocalelist.example-1">
- <title>getLocaleList()</title>
- <programlisting language="php"><![CDATA[
- $localelist = Zend_Locale::getLocaleList();
- ]]></programlisting>
- </example>
- <note>
- <para>
- Należy zwrócić uwagę na fakt iż nazwy locale znajdują się w kluczach tablicy
- zwrotnej. Wartości każdego jej elementu to boolean <constant>TRUE</constant>.
- </para>
- </note>
- </sect2>
- <sect2 id="zend.locale.detection">
- <title>Rozpoznanie locale</title>
- <para>
- Jeśli zaistnieje potrzeba rozpoznania czy dana zmienna, niezależnie z jakiego źródła
- pochodzi, jest poprawnym locale można do tego celu użyć statycznej metody
- <methodname>isLocale()</methodname>. Jej pierwszy parametr to łańcuch znaków do
- sprawdzenia.
- </para>
- <example id="zend.locale.detection.example-1">
- <title>Proste rozpoznanie locale</title>
- <programlisting language="php"><![CDATA[
- $input = 'to_RU';
- if (Zend_Locale::isLocale($input)) {
- print "'{$input}' to poprawne locale";
- } else {
- print "Niestety... podana zmienna nie jest poprawnym locale";
- }
- ]]></programlisting>
- </example>
- <para>
- Jak widać, powyższa metoda zawsze zwraca wartość logiczną. Istnieje jeden powód,
- który powoduje rzucenie wyjątku w tej metodzie. Dzieje się tak jeśli system
- operacyjny nie dostarcza żadnego locale a Zend Framework nie jest w stanie
- go wykryć automatycznie. Często może to oznaczać problem istniejący na styku systemu
- i środowiska <acronym>PHP</acronym> i jego funkcji <methodname>setlocale()</methodname>.
- </para>
- <para>
- Należy też zauważyć, iż każdy podany łańcuch locale zostanie automatycznie ograniczony
- do kodu języka jeśli kod regionu nie jest poprawny. W poprzednim przykładzie kod
- języka <code>'to'</code> nie istnieje w regionie <code>'RU'</code> ale klasa
- <classname>Zend_Locale</classname> zwróci <constant>TRUE</constant> ponieważ możliwe
- jest dostosowanie podanego stringu do poprawnego locale.
- </para>
- <para>
- Niekiedy, przydatne może okazać się ograniczenie wyżej opisanego zachowania. W takiej
- sytuacji należy skorzystać z drugiego parametru metody
- <methodname>isLocale()</methodname>. Parametr <code>strict</code> przyjmuje domyślnie
- wartość <constant>FALSE</constant> ale można zadeklarować jego wartość jako
- <constant>TRUE</constant> i wyłączyć dostosowywanie przekazanego locale.
- </para>
- <example id="zend.locale.detection.example-2">
- <title>Ścisłe rozpoznanie locale</title>
- <programlisting language="php"><![CDATA[
- $input = 'to_RU';
- if (Zend_Locale::isLocale($input, true)) {
- print "'{$input}' to poprawne locale";
- } else {
- print "Niestety... podana zmienna nie jest poprawnym locale";
- }
- ]]></programlisting>
- </example>
- <para>
- Teraz, kiedy możliwe jest rozpoznanie czy określony łańcuch znaków jest poprawnym
- locale, nic nie stoi na przeszkodzie aby samemu tworzyć klasy świadome locale. Jednak
- wprowadzając podobne rozwiązanie szybko dochodzi się do wniosku, że implementacja
- będzie stanowiła bardzo podobne 15 linijek kodu. Przykładowo:
- </para>
- <example id="zend.locale.detection.example-3">
- <title>Implementacja kodu świadomego locale</title>
- <programlisting language="php"><![CDATA[
- if ($locale === null) {
- $locale = new Zend_Locale();
- }
- if (!Zend_Locale::isLocale($locale, true, false)) {
- if (!Zend_Locale::isLocale($locale, false, false)) {
- throw new Zend_Locale_Exception(
- "The locale '$locale' is no known locale");
- }
- $locale = new Zend_Locale($locale);
- }
- if ($locale instanceof Zend_Locale) {
- $locale = $locale->toString();
- }
- ]]></programlisting>
- </example>
- <para>
- Z nadejściem Zend Framework 1.8 dodano statyczną metodę
- <methodname>findLocale()</methodname>, która zwraca łańcuch znaków zawierający locale.
- Oto lista jej zadań:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- Sprawdzenie czy podany string jest poprawnym locale
- </para>
- </listitem>
- <listitem>
- <para>
- Ograniczenie locale jeśli region nie jest poprawny
- </para>
- </listitem>
- <listitem>
- <para>
- Zwrócenie uprzednio ustawionego locale aplikacji w przypadku braku argumentów
- </para>
- </listitem>
- <listitem>
- <para>
- Sprawdzenie locale pobranego z przeglądarki jeśli wzceśniejsze detekcje zawiodły
- </para>
- </listitem>
- <listitem>
- <para>
- Sprawdzenie locale środowiska serwera jeśli wzceśniejsze detekcje zawiodły
- </para>
- </listitem>
- <listitem>
- <para>
- Sprawdzenie locale frameworka jeśli wzceśniejsze detekcje zawiodły
- </para>
- </listitem>
- <listitem>
- <para>
- Zwrócenie łańcucha znaków reprezentującego znalezione locale
- </para>
- </listitem>
- </itemizedlist>
- <para>
- Poniższy przykład pokazuje sposób użycia tej metody zamiast, wcześniej opisanych,
- kilkunastu linijek:
- </para>
- <example id="zend.locale.detection.example-4">
- <title>Implementacja kodu świadomego locale z Zend Framework 1.8</title>
- <programlisting language="php"><![CDATA[
- $locale = Zend_Locale::findLocale($inputstring);
- ]]></programlisting>
- </example>
- </sect2>
- </sect1>
- <!--
- vim:se ts=4 sw=4 et:
- -->
|