| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914 |
- <?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łowu 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ładnik 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 przetł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 unicode. Dzięki
- temu można 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 zlokalizowane ł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) odpowiadają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 najprostszy 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 zestaw 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 wcześniejsze detekcje
- zawiodły
- </para>
- </listitem>
- <listitem>
- <para>
- Sprawdzenie locale środowiska serwera jeśli wcześniejsze detekcje zawiodły
- </para>
- </listitem>
- <listitem>
- <para>
- Sprawdzenie locale frameworka jeśli wcześ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:
- -->
|