Zend_Locale-Functions.xml 93 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 15855 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.locale.functions">
  5. <title>Zend_Locale verwenden</title>
  6. <para>
  7. <classname>Zend_Locale</classname> liefert auch lokalisierte Informationen über
  8. Gebietsschema für jedes Gebietsschema. Das beinhaltet unser anderem lokalisierte Namen für
  9. andere gebietsschema, Tage der Woche, Monatsnamen, usw.
  10. </para>
  11. <sect2 id="zend.locale.copying">
  12. <title>Kopieren, Klonen und Serialisieren von Gebietsschema Objekten</title>
  13. <para>
  14. Verwende
  15. <ulink url="http://php.net/language.oop5.cloning">Klonen von Objekten</ulink>
  16. um Gebietsschema Objekte exakt und effizient zu duplizieren. Die meisten lokalisierbaren
  17. Methoden akzeptieren auch eine Zeichenkette welche das Gebietsschema repräsentiert.
  18. Dieser entspricht dem Ergebnis von <code>$locale->toString()</code>.
  19. </para>
  20. <example id="zend.locale.copying.example-1">
  21. <title>Klonen</title>
  22. <programlisting language="php"><![CDATA[
  23. $locale = new Zend_Locale('ar');
  24. // Speichere das $locale Objekt als Serialisierung
  25. $serializedLocale = $locale->serialize();
  26. // Wiedererstellung des Original Objekts
  27. $localeObject = unserialize($serializedLocale);
  28. // Erhalte eine Zeichenkette welche das Gebietsschema identifiziert
  29. $stringLocale = $locale->toString();
  30. // Erstelle eine geklonte Kopie des $locale Objektes
  31. $copiedLocale = clone $locale;
  32. print "copied: ", $copiedLocale->toString();
  33. // PHP ruft automatisch toString() über __toString(); auf
  34. print "copied: ", $copiedLocale;
  35. ]]></programlisting>
  36. </example>
  37. </sect2>
  38. <sect2 id="zend.locale.equals">
  39. <title>Gleichheit</title>
  40. <para>
  41. <classname>Zend_Locale</classname> bietet auch eine erwartete Funktion zum Vergleichen
  42. von zwei Gebietsschema an. Alle lokalisierbaren Klassen sollten eine Vergleichbare
  43. Funktion für eine Gleichheitsprüfung anbieten.
  44. </para>
  45. <example id="zend.locale.equals.example-1">
  46. <title>Prüfung auf gleiche Gebietsschemata</title>
  47. <programlisting language="php"><![CDATA[
  48. $locale = new Zend_Locale();
  49. $mylocale = new Zend_Locale('en_US');
  50. // Prüfe ob die Gebietsschema gleich sind
  51. if ($locale->equals($mylocale)) {
  52. print "Die Gebietsschemata sind gleich";
  53. }
  54. ]]></programlisting>
  55. </example>
  56. </sect2>
  57. <sect2 id="zend.locale.getdefault">
  58. <title>Standard Gebietsschemata</title>
  59. <para>
  60. Die Methode <code>getDefault()</code> gibt ein Array mit relevanten Gebietsschemata
  61. zurück wobei Informationen vom Web Browser des Benutzers (wenn vorhanden), Informationen
  62. vom Betriebsystem des Host Servers und ZF Einstellungen benutzt werden. Wie beim
  63. Konstruktor von <classname>Zend_Locale</classname> wählt der erste Parameter die
  64. bevorzugte Umgebung von der die Informationen zuerst geholt werden sollen <link
  65. linkend="zend.locale.selection">(<code>BROWSER</code>, <code>ENVIRONMENT</code>, or
  66. <code>FRAMEWORK)</code></link>. Der zweite Parameter wechselt zwischen der Rückgabe
  67. aller gefundenen Gebietsschemata oder nur dem ersten/besten Gebietsschema.
  68. Lokalisierbare Komponenten benutzen normalerweise nur das erste Gebietsschema. Wenn
  69. vorhanden, wird eine Bewertung der Qualität mit angegeben.
  70. </para>
  71. <example id="zend.locale.getdefault.example-1">
  72. <title>Das Standard Gebietsschema erhalten</title>
  73. <programlisting language="php"><![CDATA[
  74. $locale = new Zend_Locale();
  75. // Alle Standard Gebietsschema zurückgeben
  76. $found = $locale->getDefault();
  77. print_r($found);
  78. // Nur die Gebietsschema des Browsers zurück geben
  79. $found2 = $locale->getDefault(Zend_Locale::BROWSER,TRUE);
  80. print_r($found2);
  81. ]]></programlisting>
  82. </example>
  83. <para>
  84. Um nur die Standard Gebietsschema für <link
  85. linkend="zend.locale.selection"><code>BROWSER</code>, <code>ENVIRONMENT</code>, oder
  86. <code>FRAMEWORK</code></link> zu erhalten, können die folgenden Methoden benutzt
  87. werden:
  88. <itemizedlist>
  89. <listitem>
  90. <para>
  91. <code>getEnvironment()</code>
  92. </para>
  93. </listitem>
  94. <listitem>
  95. <para>
  96. <code>getBrowser()</code>
  97. </para>
  98. </listitem>
  99. <listitem>
  100. <para>
  101. <code>getLocale()</code>
  102. </para>
  103. </listitem>
  104. </itemizedlist>
  105. </para>
  106. </sect2>
  107. <sect2 id="zend.locale.setlocale">
  108. <title>Ein neues Gebietsschema setzen</title>
  109. <para>
  110. Ein neues Gebietsschema kann mit der Funktion <code>setLocale()</code> gesetzt werden.
  111. Diese Funktion nimmt eine Gebietsschema Zeichenkette als Parameter an. Wenn kein
  112. Gebietsschema angegeben wurde, wird ein <link
  113. linkend="zend.locale.selection">automatisch gewähltes</link> Gebietsschema benutzt.
  114. Da <classname>Zend_Locale</classname> Objekte sehr "leicht" sind, existiert diese
  115. Methode hauptsächlich um Nebeneffekte auszuschließen, für Klassen die ein existierendes
  116. angelegtes Objekt referenzieren.
  117. </para>
  118. <example id="zend.locale.setlocale.example-1">
  119. <title>setLocale</title>
  120. <programlisting language="php"><![CDATA[
  121. $locale = new Zend_Locale();
  122. // Aktuelles Gebietsschema
  123. print $locale->toString();
  124. // neues Gebietsschema
  125. $locale->setLocale('aa_DJ');
  126. print $locale->toString();
  127. ]]></programlisting>
  128. </example>
  129. </sect2>
  130. <sect2 id="zend.locale.getlocale">
  131. <title>Auslesen von Sprache und Region</title>
  132. <para>
  133. <code>getLanguage()</code> gibt eine Zeichenkette zurück welche den zwei-Zeichen Code
  134. der Sprache des Gebietsschemas enthält. <code>getRegion()</code> gibt eine Zeichenkette
  135. zurück welche den Zwei-Zeichen Code der Region des Gebietsschemas enthält.
  136. </para>
  137. <example id="zend.locale.getlocale.example-1">
  138. <title>getLanguage and getRegion</title>
  139. <programlisting language="php"><![CDATA[
  140. $locale = new Zend_Locale();
  141. // Wenn das Gebietsschema 'de_AT' ist, wird 'de' als Sprache zurückgegeben
  142. print $locale->getLanguage();
  143. // Wenn das Gebietsschema 'de_AT' ist, wird 'AT' als Region zurückgegeben
  144. print $locale->getRegion();
  145. ]]></programlisting>
  146. </example>
  147. </sect2>
  148. <sect2 id="zend.locale.getdata">
  149. <title>Lokalisierte Zeichenketten beschaffen</title>
  150. <para>
  151. <code>getTranslationList()</code> gibt Zugriff auf viele Arten von lokalisierten
  152. Informationen. Diese Informationen sind sehr nützlich wenn man einem Benutzer
  153. lokalisierte Daten anzeigen will, ohne das man alles Übersetzen muß. Diese Informationen
  154. sind bereits für den Gebrauch vorhanden.
  155. </para>
  156. <para>
  157. Die angefragte Liste an Informationen wird immer als benanntes Array zurückgegeben. Wenn
  158. mehr als ein Wert zu einem expliziten Typ angegeben werden soll von dem man Werte
  159. erhalten will, muss ein Array statt mehrerer Werte übergeben werden.
  160. </para>
  161. <example id="zend.locale.getdata.example-1">
  162. <title>getTranslationList</title>
  163. <programlisting language="php"><![CDATA[
  164. $list = Zend_Locale::getTranslationList('language', 'de_AT');
  165. print_r ($list);
  166. // Beispiel Schlüssel -> Werte Paare...
  167. // [de] -> Deutsch
  168. // [en] -> Englisch
  169. // Einen der zurückgegebenen Schlüssel als Wert für die
  170. // getTranslation() Methode einer anderen Sprache verwenden
  171. print Zend_Locale::getTranslation('de', 'language', 'zh');
  172. // Gibt die Übersetzung für die Sprache 'de' in chinesisch zurück
  173. ]]></programlisting>
  174. </example>
  175. <para>
  176. Man kann diese Informationen für alle Sprachen auslesen. Aber nicht alle dieser
  177. Informationen sind komplett für alle Sprachen. Einige dieser Arten sind auch durch eine
  178. eigene Funktion erhältlich wegen der Einfachheit. Anbei eine Liste für detailierte
  179. Informationen hierüber.
  180. </para>
  181. <table id="zend.locale.getdata.table-1">
  182. <title>
  183. Details für getTranslationList($type = null, $locale = null, $value = null)
  184. </title>
  185. <tgroup cols="2">
  186. <thead>
  187. <row>
  188. <entry>Typ</entry>
  189. <entry>Beschreibung</entry>
  190. </row>
  191. </thead>
  192. <tbody>
  193. <row>
  194. <entry><emphasis>Language</emphasis></entry>
  195. <entry>
  196. Gibt eine lokalisierte Liste aller Sprachen zurück. Der Sprach-Teil des
  197. Gebietsschemas wird als Schlüssel und die Übersetzung als Wert
  198. zurückgegeben
  199. </entry>
  200. </row>
  201. <row>
  202. <entry><emphasis>Script</emphasis></entry>
  203. <entry>
  204. Gibt eine lokalisierte Liste aller Schriften zurück. Die Schrift wird
  205. als Schlüssel die Übersetzung als Wert zurückgegeben
  206. </entry>
  207. </row>
  208. <row>
  209. <entry><emphasis>Territory</emphasis></entry>
  210. <entry>
  211. Gibt eine lokalisierte Liste aller Territorien zurück. Diese enthält
  212. Länder, Kontinente und Territorien. Um nur die Territorien und
  213. Kontinente zu erhalten, muß '1' als Wert verwendet werden. Um nur die
  214. Länder zu erhalten muß '2' als Wert verwendet werden. Der Landes-Teil
  215. des Gebietsschemas wird, wo es möglich ist, als Schlüssel verwendet. In
  216. den anderen Fällen wird der offizielle ISO Code für dieses Territorium
  217. verwendet. Das übersetzte Territorium wird als Wert zurückgegeben. Wenn
  218. der Wert nicht angegeben wird erhält man eine Liste mit beidem
  219. </entry>
  220. </row>
  221. <row>
  222. <entry><emphasis>Variant</emphasis></entry>
  223. <entry>
  224. Gibt eine lokalisierte Liste von bekannten Varianten von Schriften
  225. zurück. Die Variante wird als Schlüssel und die Übersetzung als Wert
  226. zurückgegeben
  227. </entry>
  228. </row>
  229. <row>
  230. <entry><emphasis>Key</emphasis></entry>
  231. <entry>
  232. Gibt eine lokalisierte Liste von bekannten Schlüsseln zurück. Diese
  233. Schlüssel sind generische Werte die in Übersetzungen verwendet werden.
  234. Das sind normalerweise Kalendar, Sammlungen und Währungen. Der Schlüssel
  235. wird als Arrayschlüssel und die Übersetzung als Wert zurückgegeben
  236. </entry>
  237. </row>
  238. <row>
  239. <entry><emphasis>Type</emphasis></entry>
  240. <entry>
  241. Gibt eine lokalisierte Liste von bekannten Typen von Schlüssel zurück.
  242. Das sind Varianten von Typen von Kalenderrepräsentationen und Typen von
  243. Sammlungen. Wenn 'collation' als Wert verwendet wird, dann werden alle
  244. Typen von Sammlungen zurückgegeben. Wenn 'calendar' als Wert verwendet
  245. wird dann werden alle Typen von Kalender zurückgegeben. Wenn der Wert
  246. nicht angegeben wird, dann wird eine Liste mit beidem zurückgegeben. Der
  247. Typ wird als Schlüssel und die Übersetzung als Wert zurückgegeben
  248. </entry>
  249. </row>
  250. <row>
  251. <entry><emphasis>Layout</emphasis></entry>
  252. <entry>
  253. Gibt eine Liste von Regeln zurück die beschreiben wie spezielle
  254. Textabschnitte formatiert werden
  255. </entry>
  256. </row>
  257. <row>
  258. <entry><emphasis>Characters</emphasis></entry>
  259. <entry>
  260. Gibt eine Liste von in diesem Gebietsschema erlaubten Zeichen zurück
  261. </entry>
  262. </row>
  263. <row>
  264. <entry><emphasis>Delimiters</emphasis></entry>
  265. <entry>
  266. Gibt eine Liste von in diesem Gebietsschema erlaubten Anführungszeichen
  267. zurück
  268. </entry>
  269. </row>
  270. <row>
  271. <entry><emphasis>Measurement</emphasis></entry>
  272. <entry>
  273. Gibt eine Liste von bekannten Bemessungswerten zurück. Diese Liste
  274. sollte nicht mehr verwendet werden
  275. </entry>
  276. </row>
  277. <row>
  278. <entry><emphasis>Months</emphasis></entry>
  279. <entry>
  280. Gibt eine Liste aller Repräsentationen für Monate in diesem
  281. Gebietsschema zurück. Es gibt einige unterschiedliche Repräsentationen
  282. welche alle als Unterarray zurückgegeben werden. Wenn kein Wert
  283. angegeben wird, dann wird eine Liste aller Monate des 'gregorian'
  284. (gregorianischen) Kalenders zurückgegeben. Es kann jeder bekannte
  285. Kalender als Wert angegeben werden um eine Liste der Monate dieses
  286. Kalenders zu erhalten. Der Einfachheit halber sollte <link
  287. linkend="zend.date.introduction">Zend_Date</link> verwendet werden
  288. </entry>
  289. </row>
  290. <row>
  291. <entry><emphasis>Month</emphasis></entry>
  292. <entry>
  293. Gibt eine lokalisierte Liste aller Monatsnamen für dieses Gebietsschema
  294. zurück. Wenn der Wert unterdrückt wird, dann wird der normalerweise
  295. verwendete gregorianische komplette Name der Monate zurückgegeben, wobei
  296. jede Monatsnummer als Schlüssel und das übersetzte Monat als Wert
  297. zurückgegeben wird. Man kann die Monate für andere Kalender und Formate
  298. erhalten indem ein Array als Wert angegeben wird. Der erste Eintrag des
  299. Arrays muß der Kalender sein, der zweite der verwendete Kontext und der
  300. dritte die Länge die zurückgegeben werden soll. Der Einfachheit halber
  301. sollte <link linkend="zend.date.introduction">Zend_Date</link> verwendet
  302. werden
  303. </entry>
  304. </row>
  305. <row>
  306. <entry><emphasis>Days</emphasis></entry>
  307. <entry>
  308. Gibt eine Liste aller Repräsentationen für Tage in diesem Gebietsschema
  309. zurück. Es gibt einige unterschiedliche Repräsentationen welche alle als
  310. Unterarray zurückgegeben werden. Wenn kein Wert angegeben wird, dann
  311. wird eine Liste aller Tage des 'gregorian' (gregorianischen) Kalenders
  312. zurückgegeben. Es kann jeder bekannte Kalender als Wert angegeben werden
  313. um eine Liste der Tage dieses Kalenders zu erhalten. Der Einfachheit
  314. halber sollte <link linkend="zend.date.introduction">Zend_Date</link>
  315. verwendet werden
  316. </entry>
  317. </row>
  318. <row>
  319. <entry><emphasis>Day</emphasis></entry>
  320. <entry>
  321. Gibt eine lokalisierte Liste aller Tagesnamen für dieses Gebietsschema
  322. zurück. Wenn der Wert unterdrückt wird, dann wird der normalerweise
  323. verwendete gregorianische komplette Name der Tage zurückgegeben, wobei
  324. die englische Abkürzung des Tages als Schlüssel und der übersetzte Tag
  325. als Wert zurückgegeben wird. Man kann die Tage für andere Kalender und
  326. Formate erhalten indem ein Array als Wert angegeben wird. Der erste
  327. Eintrag des Arrays muß der Kalender sein, der zweite der verwendete
  328. Kontext und der dritte die Länge die zurückgegeben werden soll. Der
  329. Einfachheit halber sollte <link
  330. linkend="zend.date.introduction">Zend_Date</link> verwendet werden
  331. </entry>
  332. </row>
  333. <row>
  334. <entry><emphasis>Week</emphasis></entry>
  335. <entry>
  336. Gibt eine Liste von Werten für die korrekte Berechnung der Woche in
  337. einem Gebietsschema zurück. Der Einfachheit halber sollte
  338. <link linkend="zend.date.introduction">Zend_Date</link> verwendet werden
  339. </entry>
  340. </row>
  341. <row>
  342. <entry><emphasis>Quarters</emphasis></entry>
  343. <entry>
  344. Gibt eine Liste aller Repräsentationen für Quartale in diesem
  345. Gebietsschema zurück. Es gibt einige unterschiedliche Repräsentationen
  346. welche alle als Unterarray zurückgegeben werden. Wenn kein Wert
  347. angegeben wird, dann wird eine Liste aller Quartale des 'gregorian'
  348. (gregorianischen) Kalenders zurückgegeben. Es kann jeder bekannte
  349. Kalender als Wert angegeben werden um eine Liste der Quartale dieses
  350. Kalenders zu erhalten
  351. </entry>
  352. </row>
  353. <row>
  354. <entry><emphasis>Quarter</emphasis></entry>
  355. <entry>
  356. Gibt eine lokalisierte Liste aller Quartalsnamen für dieses
  357. Gebietsschema zurück. Wenn der Wert unterdrückt wird, dann wird der
  358. normalerweise verwendete gregorianische komplette Name der Quartale
  359. zurückgegeben, wobei jede Quartalsnummer als Schlüssel und das
  360. übersetzte Quartal als Wert zurückgegeben wird. Man kann die Quartale
  361. für andere Kalender und Formate erhalten indem ein Array als Wert
  362. angegeben wird. Der erste Eintrag des Arrays muß der Kalender sein, der
  363. zweite der verwendete Kontext und der dritte die Länge die zurückgegeben
  364. werden soll
  365. </entry>
  366. </row>
  367. <row>
  368. <entry><emphasis>Eras</emphasis></entry>
  369. <entry>
  370. Gibt eine Liste aller Repräsentationen für Epochen in diesem
  371. Gebietsschema zurück. Wenn kein Wert angegeben wird, dann wird eine
  372. Liste aller Epochen des 'gregorian' (gregorianischen) Kalenders
  373. zurückgegeben. Es kann jeder bekannte Kalender als Wert angegeben werden
  374. um eine Liste der Epochen dieses Kalenders zu erhalten
  375. </entry>
  376. </row>
  377. <row>
  378. <entry><emphasis>Era</emphasis></entry>
  379. <entry>
  380. Gibt eine lokalisierte Liste aller Namen von Epochen für dieses
  381. Gebietsschema zurück. Wenn der Wert unterdrückt wird, dann wird der
  382. normalerweise verwendete gregorianische komplette Name der Epoche
  383. zurückgegeben, wobei jede Epochennummer als Schlüssel und die übersetzte
  384. Epoche als Wert zurückgegeben wird. Man kann die Epochen für andere
  385. Kalender und Formate erhalten indem ein Array als Wert angegeben wird.
  386. Der erste Eintrag des Arrays muß der Kalender sein und der zweite die
  387. Länge die zurückgegeben werden soll
  388. </entry>
  389. </row>
  390. <row>
  391. <entry><emphasis>Date</emphasis></entry>
  392. <entry>
  393. Gibt eine lokalisierte Liste aller Datumsformate für dieses
  394. Gebietsschema zurück. Der Name des Datumsformats wird als Schlüssel und
  395. das Format selbst als Wert zurückgegeben. Wenn der Wert nicht angegeben
  396. wird, dann werden die Datumsformate des gregorianischen Kalenders
  397. zurückgegeben. Die Datumsformate für andere Kalender kann man erhalten
  398. indem der gewünschte Kalender als String übergeben wird. Der Einfachheit
  399. halber sollte <link linkend="zend.date.introduction">Zend_Date</link>
  400. verwendet werden
  401. </entry>
  402. </row>
  403. <row>
  404. <entry><emphasis>Time</emphasis></entry>
  405. <entry>
  406. Gibt eine lokalisierte Liste aller Zeitformate für dieses Gebietsschema
  407. zurück. Der Name des Zeitformats wird als Schlüssel und das Format
  408. selbst als Wert zurückgegeben. Wenn der Wert nicht angegeben wird, dann
  409. werden die Zeitformate des gregorianischen Kalenders zurückgegeben. Die
  410. Zeitformate für andere Kalender kann man erhalten indem der gewünschte
  411. Kalender als String übergeben wird. Der Einfachheit halber sollte
  412. <link linkend="zend.date.introduction">Zend_Date</link> verwendet werden
  413. </entry>
  414. </row>
  415. <row>
  416. <entry><emphasis>DateTime</emphasis></entry>
  417. <entry>
  418. Gibt eine lokalisierte Liste aller Datums-Zeitformate für dieses
  419. Gebietsschema zurück. Der Name des Datums-Zeitformats wird als Schlüssel
  420. und das Format selbst als Wert zurückgegeben. Wenn der Wert nicht
  421. angegeben wird, dann werden die Datums-Zeitformate des gregorianischen
  422. Kalenders zurückgegeben. Die Datums-Zeitformate für andere Kalender kann
  423. man erhalten indem der gewünschte Kalender als String übergeben wird.
  424. Der Einfachheit halber sollte <link
  425. linkend="zend.date.introduction">Zend_Date</link> verwendet werden
  426. </entry>
  427. </row>
  428. <row>
  429. <entry><emphasis>DateItem</emphasis></entry>
  430. <entry>
  431. Gibt eine Liste von Standardformaten für gegebene Datums oder Zeit
  432. Einheiten zurück
  433. </entry>
  434. </row>
  435. <row>
  436. <entry><emphasis>DateInterval</emphasis></entry>
  437. <entry>
  438. Gibt eine Liste von Datums- oder Zeitformaten zurück die verwendet
  439. werden wenn man Intervalle darstellen will. Die Liste ist ein
  440. mehrdimentionales Array wobei die erste Dimension das Format des
  441. Intervalls und die zweite Dimension das Token mit der größten
  442. Differenz ist.
  443. </entry>
  444. </row>
  445. <row>
  446. <entry><emphasis>Field</emphasis></entry>
  447. <entry>
  448. Gibt eine lokalisierte Liste von Datumsfelder zurück die verwendet
  449. werden kann um Kalender oder Datumsstrings wie 'Monat' oder 'Jahr' in
  450. einer gewünschte Sprache darzustellen. Wenn der Wert nicht angegeben
  451. wird dann wird diese Liste für den gregorianischen Kalender
  452. zurückgegeben. Man kann diese Liste für andere Kalender erhalten indem
  453. der gewünschte Kalender als String übergeben wird
  454. </entry>
  455. </row>
  456. <row>
  457. <entry><emphasis>Relative</emphasis></entry>
  458. <entry>
  459. Gibt eine lokalisierte Liste von relativen Daten zurück die verwendet
  460. werden können um relative Daten wie 'gestern' oder 'morgen' in einer
  461. gewünschten Sprache darzustellen. Wenn der Wert nicht angegeben wird
  462. dann wird diese Liste für den gregorianischen Kalender zurückgegeben.
  463. Man kann diese Liste für andere Kalender erhalten indem der gewünschte
  464. Kalender als String übergeben wird
  465. </entry>
  466. </row>
  467. <row>
  468. <entry><emphasis>Symbols</emphasis></entry>
  469. <entry>
  470. Gibt eine lokalisierte Liste von Zeichen zurück die in Repräsentationen
  471. von Zahlen verwendet wird
  472. </entry>
  473. </row>
  474. <row>
  475. <entry><emphasis>NameToCurrency</emphasis></entry>
  476. <entry>
  477. Gibt eine lokalisierte Liste von Namen für Währungen zurück. Die Währung
  478. wird hierbei als Schlüssel und der übersetzte Name als Wert
  479. zurückgegeben. Der Einfachheit halber sollte
  480. <link linkend="zend.currency.introduction">Zend_Currency</link>
  481. verwendet werden
  482. </entry>
  483. </row>
  484. <row>
  485. <entry><emphasis>CurrencyToName</emphasis></entry>
  486. <entry>
  487. Gibt eine lokalisierte Liste von Währungen für lokalisierte Namen
  488. zurück. Der übersetzte Name wird als Schlüssel und die Währung als Wert
  489. zurückgegeben. Der Einfachheit halber sollte
  490. <link linkend="zend.currency.introduction">Zend_Currency</link>
  491. verwendet werden
  492. </entry>
  493. </row>
  494. <row>
  495. <entry><emphasis>CurrencySymbol</emphasis></entry>
  496. <entry>
  497. Gibt eine Liste von bekannten lokalisierten Symbolen für Währungen
  498. zurück. Die Währung wird als Schlüssel und das Symbol als Wert
  499. zurückgegeben. Der Einfachheit halber sollte <link
  500. linkend="zend.currency.introduction">Zend_Currency</link>
  501. verwendet werden
  502. </entry>
  503. </row>
  504. <row>
  505. <entry><emphasis>Question</emphasis></entry>
  506. <entry>
  507. Gibt eine Liste von lokalisierten Strings für die Akzeptanz ('ja') und
  508. die Verneinung ('nein') zurück. Der Einfachheit halber sollte
  509. <link linkend="zend.locale.getquestion">Zend_Locale's getQuestion
  510. Methode</link> verwendet werden
  511. </entry>
  512. </row>
  513. <row>
  514. <entry><emphasis>CurrencyFraction</emphasis></entry>
  515. <entry>
  516. Gibt eine Liste von Brüchen für Währungswerte zurück. Die Währung wird
  517. als Schlüssel und der Bruch als Integer Wert zurückgegeben. Der
  518. Einfachheit halber sollte <link
  519. linkend="zend.currency.introduction">Zend_Currency</link> verwendet
  520. werden
  521. </entry>
  522. </row>
  523. <row>
  524. <entry><emphasis>CurrencyRounding</emphasis></entry>
  525. <entry>
  526. Gibt eine Liste zurück wie welche Währung gerundet werden muß. Die
  527. Währung wird als Schlüssel und der Rundungswert als Ganzzahl
  528. zurückgegeben. Der Einfachheit halber sollte <link
  529. linkend="zend.currency.introduction">Zend_Currency</link>
  530. verwendet werden
  531. </entry>
  532. </row>
  533. <row>
  534. <entry><emphasis>CurrencyToRegion</emphasis></entry>
  535. <entry>
  536. Gibt eine Liste von Währungen zurück von denen bekannt ist das Sie in
  537. einer Region verwendet werden. Der ISO3166 Wert ('Region') wird als
  538. Arrayschlüssel und der ISO4217 Wert ('Währung') als Arraywert
  539. zurückgegeben. Der Einfachheit halber sollte <link
  540. linkend="zend.currency.introduction">Zend_Currency</link> verwendet
  541. werden
  542. </entry>
  543. </row>
  544. <row>
  545. <entry><emphasis>RegionToCurrency</emphasis></entry>
  546. <entry>
  547. Gibt eine Liste von Regionen zurück in denen eine Währung verwendet
  548. wird. Der ISO4217 Wert ('Währung') wird als Arrayschlüssel und der
  549. ISO3166 Wert ('Region') als Arraywert zurückgegeben. Wenn eine Währung
  550. in mehreren Regionen verwendet wird dann werden diese Regionen durch ein
  551. Leerzeichen getrennt. Der Einfachheit halber sollte
  552. <link linkend="zend.currency.introduction">Zend_Currency</link>
  553. verwendet werden
  554. </entry>
  555. </row>
  556. <row>
  557. <entry><emphasis>RegionToTerritory</emphasis></entry>
  558. <entry>
  559. Gibt eine Liste von Territorien mit den Ländern, oder Sub-Territorien
  560. welche in diesem Territorium enthalten sind, zurück. Der ISO Territory
  561. Code ('Territorium') wird als Arrayschlüssel und der ISO3166 Wert
  562. ('Region') als Arraywert verwendet. Wenn ein Territorium mehrere
  563. Regionen enthält werden diese Regionen mit einem Leerzeichen getrennt
  564. </entry>
  565. </row>
  566. <row>
  567. <entry><emphasis>TerritoryToRegion</emphasis></entry>
  568. <entry>
  569. Gibt eine Liste von Regionen und den Territorien in denen diese Regionen
  570. enthalten sind zurück. Der ISO3166 Code ('Region') wird als
  571. Arrayschlüssel und der ISO Territory Code ('Territorium') als Arraywert
  572. zurückgegeben. Wenn eine Region in mehreren Territorien enthalten ist
  573. werden diese Territorien mit einem Leerzeichen getrennt
  574. </entry>
  575. </row>
  576. <row>
  577. <entry><emphasis>ScriptToLanguage</emphasis></entry>
  578. <entry>
  579. Gibt eine Liste von Schriften die in einer Sprache verwendet werden
  580. zurück. Der Sprachcode wird als Arrayschlüssel und der Schriftcode als
  581. Arraywert zurückgegeben. Wenn eine Sprache mehrere Schriften enthält
  582. werden diese Schriften mit einem Leerzeichen getrennt
  583. </entry>
  584. </row>
  585. <row>
  586. <entry><emphasis>LanguageToScript</emphasis></entry>
  587. <entry>
  588. Gibt eine Liste von Sprachen und den darin geschriebenen Schriften
  589. zurück. Der Schriftcode wird als Arrayschlüssel und der Sprachcode als
  590. Arraywert zurückgegeben. Wenn eine Schrift in verschiedenen Sprachen
  591. verwendet wird werden diese Sprachen mit einem Leerzeichen getrennt
  592. </entry>
  593. </row>
  594. <row>
  595. <entry><emphasis>TerritoryToLanguage</emphasis></entry>
  596. <entry>
  597. Gibt eine Liste von Ländern zurück die eine Sprache verwenden. Der
  598. Ländercode wird als Arrayschlüssel und der Sprachcode als Arraywert
  599. zurückgegeben. Wenn eine Sprache in mehreren Ländern verwendet wird
  600. werden diese Länder mit einem Leerzeichen getrennt
  601. </entry>
  602. </row>
  603. <row>
  604. <entry><emphasis>LanguageToTerritory</emphasis></entry>
  605. <entry>
  606. Gibt eine Liste von Ländern und den in diesen Ländern gesprächenen
  607. Sprachen zurück. Der Ländercode wird als Arrayschlüssel und der
  608. Sprachcode wird als Arraywert zurückgegeben. Wenn ein Land verschiedene
  609. Sprachen verwendet werden diese Sprachen mit einem Leerzeichen getrennt
  610. </entry>
  611. </row>
  612. <row>
  613. <entry><emphasis>TimezoneToWindows</emphasis></entry>
  614. <entry>
  615. Gibt eine Liste von Windows Zeitzonen und den entsprechenden ISO
  616. Zeitzonen zurück. Die Windows Zeitzone dies als Arrayschlüssel und die
  617. ISO Zeitzone als Arraywert zurückgegeben
  618. </entry>
  619. </row>
  620. <row>
  621. <entry><emphasis>WindowsToTimezone</emphasis></entry>
  622. <entry>
  623. Gibt eine Liste von ISO Zeitzonen und die entsprechenden Windows
  624. Zeitzonen zurück. Die ISO Zeitzone wird als Arrayschlüssel und die
  625. Windows Zeitzone als Arraywert zurückgegeben
  626. </entry>
  627. </row>
  628. <row>
  629. <entry><emphasis>TerritoryToTimezone</emphasis></entry>
  630. <entry>
  631. Gibt eine Liste von Regionen oder Territorien und den entsprechenden ISO
  632. Zeitzonen zurück. Die ISO Zeitzone wird als Arrayschlüssel und der
  633. Territory Code als Arraywert zurückgegeben
  634. </entry>
  635. </row>
  636. <row>
  637. <entry><emphasis>TimezoneToTerritory</emphasis></entry>
  638. <entry>
  639. Gibt eine Liste von Zeitzonen und den entsprechenden Regionen oder
  640. Territorien zurück. Die Region oder der Territory Code wird als
  641. Arrayschlüssel und die ISO Zeitzone als Arraywert zurückgegeben
  642. </entry>
  643. </row>
  644. <row>
  645. <entry><emphasis>CityToTimezone</emphasis></entry>
  646. <entry>
  647. Gibt eine lokalisierte Liste von Städten zurück die als Übersetzung für
  648. eine entsprechende Zeitzone verwendet werden können. Nicht für alle
  649. Zeitzonen ist eine Übersetzung vorhanden, aber für einen Benutzer ist
  650. eine echte, in seiner Sprache geschriebenen, Stadt besser als der ISO
  651. Name seiner Zeitzone. Die ISO Zeitzone wird als Arrayschlüssel und die
  652. übersetzte Stadt als Arraywert zurückgegeben
  653. </entry>
  654. </row>
  655. <row>
  656. <entry><emphasis>TimezoneToCity</emphasis></entry>
  657. <entry>
  658. Gibt eine Liste von Zeitzonen für lokalisierte Städtenamen zurück. Die
  659. lokalisierte Stadt wird als Arrayschlüssel und der ISO Name der Zeitzone
  660. als Arraywert zurückgegeben
  661. </entry>
  662. </row>
  663. <row>
  664. <entry><emphasis>PhoneToTerritory</emphasis></entry>
  665. <entry>
  666. Gibt eine Liste von Telefoncodes zurück die in einem bestimmten
  667. Territorium verwendet werden. Das Territorium (Region) wird als
  668. Arrayschlüssel und der Telefoncode als Arraywert verwendet
  669. </entry>
  670. </row>
  671. <row>
  672. <entry><emphasis>TerritoryToPhone</emphasis></entry>
  673. <entry>
  674. Gibt eine Liste von Territorien zurück in denen ein Telefoncode
  675. verwendet wird. Der Telefoncode wird als Arrayschlüssel und das
  676. Territorium (Region) als Arraywert verwendet. Wenn ein Telefoncode in
  677. verschiedenen Territorien verwendet wird, sind diese mit einem
  678. Leerzeichen getrennt
  679. </entry>
  680. </row>
  681. <row>
  682. <entry><emphasis>NumericToTerritory</emphasis></entry>
  683. <entry>
  684. Gibt eine Liste von 3 stelligen Numerncodes für Territorien zurück. Das
  685. Territorium (Region) wird als Arrayschlüssel und der 3 stellige
  686. Nummerncode als Arraywert verwendet
  687. </entry>
  688. </row>
  689. <row>
  690. <entry><emphasis>TerritoryToNumeric</emphasis></entry>
  691. <entry>
  692. Gibt eine Liste von Territorien mit Ihrem 3 stellige Nummerncode zurück.
  693. Das 3 stellige Nummerncode wird als Arrayschlüssel und das Territorium
  694. (Region) als Arraywert verwendet
  695. </entry>
  696. </row>
  697. <row>
  698. <entry><emphasis>Alpha3ToTerritory</emphasis></entry>
  699. <entry>
  700. Gibt eine Liste von 3 stelligen Zeichencodes für Territorien zurück. Das
  701. Territorium (Region) wird als Arrayschlüssel und der 3 stellige
  702. Zeichencode als Arraywert verwendet
  703. </entry>
  704. </row>
  705. <row>
  706. <entry><emphasis>TerritoryToAlpha3</emphasis></entry>
  707. <entry>
  708. Gibt eine Liste von Territorien mit Ihrem 3 stelligen Zeichencode
  709. zurück. Der 3 stellige Zeichencode wird als Arrayschlüssel und das
  710. Territorium (Region) als Arraywert verwendet
  711. </entry>
  712. </row>
  713. <row>
  714. <entry><emphasis>PostalToTerritory</emphasis></entry>
  715. <entry>
  716. Gibt eine Liste von Territorien mit einem Regex für Post Codes zurück,
  717. welche in diesem Territorium enthalten sind. Der ISO Territory Code
  718. ('territory') wird als Arrayschlüssel und das Regex als Arraywert
  719. verwendet.
  720. </entry>
  721. </row>
  722. <row>
  723. <entry><emphasis>NumberingSystem</emphasis></entry>
  724. <entry>
  725. Gibt eine Liste von Skripten zurück mit die Schreibweise der
  726. Ziffern, die in diesem Skript verwendet werden
  727. </entry>
  728. </row>
  729. <row>
  730. <entry><emphasis>FallbackToChar</emphasis></entry>
  731. <entry>
  732. Gibt eine Liste von Ersatzzeichen für oft verwendete Unicode Zeichen
  733. zurück. Das kann verwendet werden um zum Beispiel "©" mit "(C)" zu
  734. ersetzen
  735. </entry>
  736. </row>
  737. <row>
  738. <entry><emphasis>CharToFallback</emphasis></entry>
  739. <entry>
  740. Gibt eine Liste von Unicode Zeichen für oft verwendete Ersatzzeichen
  741. zurück. Das kann verwendet werden um zum Beispiel "(C)" mit "©" zu
  742. ersetzen
  743. </entry>
  744. </row>
  745. <row>
  746. <entry><emphasis>LocaleUpgrade</emphasis></entry>
  747. <entry>
  748. Gibt eine Liste von Abhängigkeiten von Gebietsschemata zurück die
  749. verwendet werden kann um eine Sprache in ein voll qualifiziertes
  750. Gebietsschema hochzurüsten.
  751. </entry>
  752. </row>
  753. </tbody>
  754. </tgroup>
  755. </table>
  756. <para>
  757. Wenn nur ein einzelner übersetzter Wert benötigt wird, kann die
  758. <code>getTranslation()</code> Methode verwendet werden. Diese gibt immer einen String
  759. zurück, akzeptiert aber einige andere Typen als die <code>getTranslationList()</code>
  760. Methode. Auch der Wert ist der gleiche wie vorher mit einem Unterschied. Das Detail das
  761. man zurückerhalten will muß als zusätzlicher Wert angegeben werden
  762. </para>
  763. <note>
  764. <para>
  765. Weil immer ein Wert als Detail angegeben werden muß, muss dieser Parameter als
  766. erster Parameter angegeben werden. Das unterscheidet sich von der
  767. <code>getTranslationList()</code> Methode.
  768. </para>
  769. </note>
  770. <para>
  771. Siehe die folgende Tabelle für detailierte Informationen:
  772. </para>
  773. <table id="zend.locale.getdata.table-2">
  774. <title>Details für getTranslation($value = null, $type = null, $locale = null)</title>
  775. <tgroup cols="2">
  776. <thead>
  777. <row>
  778. <entry>Typ</entry>
  779. <entry>Beschreibung</entry>
  780. </row>
  781. </thead>
  782. <tbody>
  783. <row>
  784. <entry><emphasis>Language</emphasis></entry>
  785. <entry>
  786. Gibt eine Übersetzung für eine Sprache zurück. Um die gewünschte
  787. Übersetzung auszuwählen muß der Sprachcode als Wert angegeben werden
  788. </entry>
  789. </row>
  790. <row>
  791. <entry><emphasis>Script</emphasis></entry>
  792. <entry>
  793. Gibt eine Übersetzung für eine Schrift zurück. Um die gewünschte
  794. Übersetzung auszuwählen muß der Schriftcode als Wert angegeben werden
  795. </entry>
  796. </row>
  797. <row>
  798. <entry>
  799. <emphasis>Territory</emphasis> oder <emphasis>Country</emphasis>
  800. </entry>
  801. <entry>
  802. Gibt eine Übersetzung für ein Territorium zurück. Das können Länder,
  803. Kontinente und Territorien sein. Um die gewünschte Variante auszuwählen
  804. muß der Territory Code als Wert angegeben werden
  805. </entry>
  806. </row>
  807. <row>
  808. <entry><emphasis>Variant</emphasis></entry>
  809. <entry>
  810. Gibt eine Übersetzung für eine Schriftvariante zurück. Um die gewünschte
  811. Variante auszuwählen muß der Code der Variante als Wert angegeben werden
  812. </entry>
  813. </row>
  814. <row>
  815. <entry><emphasis>Key</emphasis></entry>
  816. <entry>
  817. Gibt eine Übersetzung für einen bekannten Schlüssel zurück. Diese
  818. Schlüssel sind generische Werte die in Übersetzungen verwendet werden.
  819. Das sind normalerweise Kalender, Sammlung und Währung. Um den
  820. gewünschten Schlüssel auszuwählen muß der Schlüsselcode als Wert
  821. angegeben werden
  822. </entry>
  823. </row>
  824. <row>
  825. <entry><emphasis>DefaultCalendar</emphasis></entry>
  826. <entry>
  827. Gibt den Standardkalender für das angegebene Gebietsschema zurück. Für
  828. die meisten wird das 'gregorian' (gregorianisch) sein. Der Einfachheit
  829. halber sollte <link linkend="zend.date.introduction">Zend_Date</link>
  830. verwendet werden
  831. </entry>
  832. </row>
  833. <row>
  834. <entry><emphasis>MonthContext</emphasis></entry>
  835. <entry>
  836. Gibt den Standardkontext für Monate zurück der im angegebenen Kalender
  837. verwendet wird. Wenn der Wert nicht angegeben wird, wird der 'gregorian'
  838. (gregorianische) Kalender verwendet. Der Einfachheit halber sollte
  839. <link linkend="zend.date.introduction">Zend_Date</link> verwendet werden
  840. </entry>
  841. </row>
  842. <row>
  843. <entry><emphasis>DefaultMonth</emphasis></entry>
  844. <entry>
  845. Gibt das Standardformat für Monate zurück die im angegebene Kalender
  846. verwendet werden. Wenn der Wert nicht angegeben wird, dann wird der
  847. 'gregorian' (gregorianische) Kalender verwendet. Der Einfachheit halber
  848. sollte <link linkend="zend.date.introduction">Zend_Date</link> verwendet
  849. werden
  850. </entry>
  851. </row>
  852. <row>
  853. <entry><emphasis>Month</emphasis></entry>
  854. <entry>
  855. Gibt eine Übersetzung für ein Monat zurück. Es muß die Nummer des Monats
  856. als Ganzzahlwert angegeben werden. Er muß zwischen 1 und 12 sein. Wenn
  857. man die Daten für andere Kalender, Kontexte oder Formate empfangen will,
  858. muß ein Array statt einem Ganzzahlwert mit dem erwarteten Wert angegeben
  859. werden. Das Array muß wie folgt aussehen: <code>array('calendar',
  860. 'context', 'format', 'month number')</code>. Wenn nur ein Ganzzahlwert
  861. angegeben wird, sind die Standardwerte der 'gregorian' (Gregorianische)
  862. Kalender, der Kontext 'format' und das Format 'wide'. Der Einfachheit
  863. halber sollte <link linkend="zend.date.introduction">Zend_Date</link>
  864. verwendet werden
  865. </entry>
  866. </row>
  867. <row>
  868. <entry><emphasis>DayContext</emphasis></entry>
  869. <entry>
  870. Gibt den Standardkontext für Tage zurück der im angegebenen Kalender
  871. verwendet wird. Wenn der Wert nicht angegeben wird, wird der 'gregorian'
  872. (gregorianische) Kalender verwendet. Der Einfachheit halber sollte
  873. <link linkend="zend.date.introduction">Zend_Date</link> verwendet werden
  874. </entry>
  875. </row>
  876. <row>
  877. <entry><emphasis>DefaultDay</emphasis></entry>
  878. <entry>
  879. Gibt das Standardformat für Tage zurück die im angegebene Kalender
  880. verwendet werden. Wenn der Wert nicht angegeben wird, dann wird der
  881. 'gregorian' (gregorianische) Kalender verwendet. Der Einfachheit halber
  882. sollte <link linkend="zend.date.introduction">Zend_Date</link> verwendet
  883. werden
  884. </entry>
  885. </row>
  886. <row>
  887. <entry><emphasis>Day</emphasis></entry>
  888. <entry>
  889. Gibt eine Übersetzung für einen Tag zurück. Es muß die englische
  890. Abkürzung des Tages als Stringwert angegeben werden ('sun', 'mon',
  891. usw.). Wenn man die Daten für andere Kalender, Kontexte oder Formate
  892. empfangen will, muß ein Array statt einem Ganzzahlwert mit dem
  893. erwarteten Wert angegeben werden. Das Array muß wie folgt aussehen:
  894. <code>array('calendar', 'context', 'format', 'day abbreviation')</code>.
  895. Wenn nur ein String angegeben wird, sind die Standardwerte der
  896. 'gregorian' (Gregorianische) Kalender, der Kontext 'format' und das
  897. Format 'wide'. Der Einfachheit halber sollte <link
  898. linkend="zend.date.introduction">Zend_Date</link> verwendet werden
  899. </entry>
  900. </row>
  901. <row>
  902. <entry><emphasis>Quarter</emphasis></entry>
  903. <entry>
  904. Gibt eine Übersetzung für ein Quartal zurück. Es muß die Nummer des
  905. Quartals Ganzzahl angegeben werden und diese muß zwischen 1 und 4 sein.
  906. Wenn man die Daten für andere Kalender, Kontexte oder Formate empfangen
  907. will, muß ein Array statt einem Ganzzahlwert mit dem erwarteten Wert
  908. angegeben werden. Das Array muß wie folgt aussehen:
  909. <code>array('calendar', 'context', 'format', 'quarter number')</code>.
  910. Wenn nur ein String angegeben wird, sind die Standardwerte der
  911. 'gregorian' (Gregorianische) Kalender, der Kontext 'format' und das
  912. Format 'wide'
  913. </entry>
  914. </row>
  915. <row>
  916. <entry><emphasis>Am</emphasis></entry>
  917. <entry>
  918. Gibt eine Übersetzung für 'AM' in dem erwarteten Gebietsschema zurück.
  919. Wenn man die Daten für andere Kalender empfangen will, muß ein String
  920. mit dem erwarteten Kalender angegeben werden. Wenn der Wert nicht
  921. angegeben wird, dann wird der 'gregorian' (Gregorianische) Kalender
  922. verwendet. Der Einfachheit halber sollte <link
  923. linkend="zend.date.introduction">Zend_Date</link> verwendet werden
  924. </entry>
  925. </row>
  926. <row>
  927. <entry><emphasis>Pm</emphasis></entry>
  928. <entry>
  929. Gibt eine Übersetzung für 'PM' in dem erwarteten Gebietsschema zurück.
  930. Wenn man die Daten für andere Kalender empfangen will, muß ein String
  931. mit dem erwarteten Kalender angegeben werden. Wenn der Wert nicht
  932. angegeben wird, dann wird der 'gregorian' (Gregorianische) Kalender
  933. verwendet. Der Einfachheit halber sollte <link
  934. linkend="zend.date.introduction">Zend_Date</link> verwendet werden
  935. </entry>
  936. </row>
  937. <row>
  938. <entry><emphasis>Era</emphasis></entry>
  939. <entry>
  940. Gibt eine Übersetzung für eine Epoche zurück. Es muß die Nummer der
  941. Epoche als Ganzzahl oder String angegeben werden. Wenn man die Daten
  942. für andere Kalender oder Formate empfangen will, muß ein Array statt
  943. einem Ganzzahlwert mit dem erwarteten Wert angegeben werden. Das Array
  944. muß wie folgt aussehen: <code>array('calendar', 'format',
  945. 'era number')</code>. Wenn nur ein String angegeben wird, sind die
  946. Standardwerte der 'gregorian' (Gregorianische) Kalender und das Format
  947. 'abbr'
  948. </entry>
  949. </row>
  950. <row>
  951. <entry><emphasis>DefaultDate</emphasis></entry>
  952. <entry>
  953. Gibt das Standard Datumsformat zurück das im angegebenen Kalender
  954. verwendet wird. Wenn der Wert nicht angegeben wird, dann wird der
  955. 'gregorian' (Gregorianische) Kalender verwendet. Der Einfachheit halber
  956. sollte <link linkend="zend.date.introduction">Zend_Date</link> verwendet
  957. werden
  958. </entry>
  959. </row>
  960. <row>
  961. <entry><emphasis>Date</emphasis></entry>
  962. <entry>
  963. Gibt das Datumsformat für einen angegebenen Kalender oder Format in
  964. einem Gebietsschema zurück. Wenn kein Wert angegeben wird, dann wird der
  965. 'gregorian' (Gregorianische) Kalender mit dem Format 'medium' verwendet.
  966. Wenn ein String angegeben wird, dann wird der 'gregorian'
  967. (Gregorianische) Kalender mit dem angegebenen Format verwendet. Oder es
  968. kann auch ein Array angegeben welches wie folgt aussehen muß:
  969. <code>array('calendar', 'format')</code>. Der Einfachheit halber sollte
  970. <link linkend="zend.date.introduction">Zend_Date</link> verwendet werden
  971. </entry>
  972. </row>
  973. <row>
  974. <entry><emphasis>DefaultTime</emphasis></entry>
  975. <entry>
  976. Gibt das Standard Zeitformat zurück das im angegebenen Kalender
  977. verwendet wird. Wenn der Wert nicht angegeben wird, dann wird der
  978. 'gregorian' (Gregorianische) Kalender verwendet. Der Einfachheit halber
  979. sollte <link linkend="zend.date.introduction">Zend_Date</link> verwendet
  980. werden
  981. </entry>
  982. </row>
  983. <row>
  984. <entry><emphasis>Time</emphasis></entry>
  985. <entry>
  986. Gibt das Zeitformat für einen angegebenen Kalender oder Format in einem
  987. Gebietsschema zurück. Wenn kein Wert angegeben wird, dann wird der
  988. 'gregorian' (Gregorianische) Kalender mit dem Format 'medium' verwendet.
  989. Wenn ein String angegeben wird, dann wird der 'gregorian'
  990. (Gregorianische) Kalender mit dem angegebenen Format verwendet. Oder es
  991. kann auch ein Array angegeben welches wie folgt aussehen muß:
  992. <code>array('calendar', 'format')</code>. Der Einfachheit halber sollte
  993. <link linkend="zend.date.introduction">Zend_Date</link> verwendet werden
  994. </entry>
  995. </row>
  996. <row>
  997. <entry><emphasis>DateTime</emphasis></entry>
  998. <entry>
  999. Gibt das Datums-Zeitformat für ein angegebenes Gebietsschema zurück
  1000. welches anzeigt wie Datum und Zeit im selben String des angegebenen
  1001. Kalenders angezeigt werden sollten. Wenn kein Wert angegeben wird, dann
  1002. wird der 'gregorian' (Gregorianische) Kalender verwendet. Der
  1003. Einfachheit halber sollte <link
  1004. linkend="zend.date.introduction">Zend_Date</link> verwendet werden
  1005. </entry>
  1006. </row>
  1007. <row>
  1008. <entry><emphasis>DateItem</emphasis></entry>
  1009. <entry>
  1010. Gibt das Standardformat für ein angegebenes Datum oder Zeitelement
  1011. zurück
  1012. </entry>
  1013. </row>
  1014. <row>
  1015. <entry><emphasis>DateInterval</emphasis></entry>
  1016. <entry>
  1017. Gibt das Intervallformat für ein gegebenes Datums- oder Zeitformat
  1018. zurück. Der erste Wert ist das Kalenderformat, normalerweise
  1019. 'gregorian'. Der zweite Wert ist das Intervallformat, und der dritte
  1020. Wert ist das Token mit der größten Different. Zum Beispiel:
  1021. array('gregorian', 'yMMMM', 'y') gibt das Intervallformat für das
  1022. Datumsformat 'yMMMM' zurück, wobei 'y' die größte Differenz hat.
  1023. </entry>
  1024. </row>
  1025. <row>
  1026. <entry><emphasis>Field</emphasis></entry>
  1027. <entry>
  1028. Gibt ein übersetztes Datumsfeld zurück welches verwendet werden kann um
  1029. Kalender oder Datumsstrings wie 'Monat' oder 'Jahr' in der gewünschten
  1030. Sprache korrekt anzuzeigen. Das Feld das als String zurückgegeben werden
  1031. soll muß angegeben werden. In diesem Fall wird der 'gregorian'
  1032. (Gregorianische) Kalender verwendet. Wenn man die Felder für andere
  1033. Kalenderformat erhalten will muß ein Array angegeben werden das wie
  1034. folgt auszusehen hat: <code>array('calendar', 'date field')</code>
  1035. </entry>
  1036. </row>
  1037. <row>
  1038. <entry><emphasis>Relative</emphasis></entry>
  1039. <entry>
  1040. Gibt ein übersetztes Datums zurück welches relativ zu heute ist. Dieses
  1041. kann Strings wie 'Gestern' oder 'Morgen' in einer gewünschten Sprache
  1042. enthalten. Es muß die Anzahl der relativen Tage zu heute angegeben
  1043. werden um den erwarteten String zu erhalten. Gestern würde '-1' sein,
  1044. morgen '1' und so weiter. Es wird hierbei der 'gregorian'
  1045. (Gregorianische) Kalender verwendet. Wenn man die relativen Daten für
  1046. andere Kalenderformat erhalten will muß ein Array angegeben werden das
  1047. wie folgt auszusehen hat: <code>array('calendar', 'date field')</code>
  1048. </entry>
  1049. </row>
  1050. <row>
  1051. <entry><emphasis>DecimalNumber</emphasis></entry>
  1052. <entry>
  1053. Gibt das Format für Dezimalzahlen in einem angegebenen Gebietsschema
  1054. zurück. Der Einfachheit halber sollte <link
  1055. linkend="zend.locale.parsing">Zend_Locale_Format</link> verwendet
  1056. werden
  1057. </entry>
  1058. </row>
  1059. <row>
  1060. <entry><emphasis>ScientificNumber</emphasis></entry>
  1061. <entry>
  1062. Gibt das Format für Wissenschaftliche Zahlen im angegebenen
  1063. Gebietsschema zurück
  1064. </entry>
  1065. </row>
  1066. <row>
  1067. <entry><emphasis>PercentNumber</emphasis></entry>
  1068. <entry>
  1069. Gibt das Format für Prozentzahlen im angegebenen Gebietsschema zurück
  1070. </entry>
  1071. </row>
  1072. <row>
  1073. <entry><emphasis>CurrencyNumber</emphasis></entry>
  1074. <entry>
  1075. Gibt das Format für die Anzeige von Währungszahlen in einem angegebenen
  1076. Gebietsschema zurück. Der Einfachheit halber sollte
  1077. <link linkend="zend.currency.introduction">Zend_Currency</link>
  1078. verwendet werden
  1079. </entry>
  1080. </row>
  1081. <row>
  1082. <entry><emphasis>NameToCurrency</emphasis></entry>
  1083. <entry>
  1084. Gibt einen übersetzten Namen für eine angegebene Währung zurück. Die
  1085. Währung muß im ISO Format angegeben werden welches zum Beispiel 'EUR'
  1086. für die Währung 'Euro' ist. Der Einfachheit halber sollte
  1087. <link linkend="zend.currency.introduction">Zend_Currency</link>
  1088. verwendet werden
  1089. </entry>
  1090. </row>
  1091. <row>
  1092. <entry><emphasis>CurrencyToName</emphasis></entry>
  1093. <entry>
  1094. Gibt eine Währung für einen angegebenen lokalisierten Namen zurück. Der
  1095. Einfachheit halber sollte
  1096. <link linkend="zend.currency.introduction">Zend_Currency</link>
  1097. verwendet werden
  1098. </entry>
  1099. </row>
  1100. <row>
  1101. <entry><emphasis>CurrencySymbol</emphasis></entry>
  1102. <entry>
  1103. Gibt das für eine Währung verwendete Symbol in einem Gebietsschema
  1104. zurück. Nicht für alle Währungen existiert ein Symbol. Der Einfachheit
  1105. halber sollte <link
  1106. linkend="zend.currency.introduction">Zend_Currency</link> verwendet
  1107. werden
  1108. </entry>
  1109. </row>
  1110. <row>
  1111. <entry><emphasis>Question</emphasis></entry>
  1112. <entry>
  1113. Gibt einen lokalisierten String für Akzeptanz ('yes') und Verneinung
  1114. ('no') zurück. Es muß entweder 'yes' oder 'no' als Wert angegeben werden
  1115. um den erwarteten String zu erhalten. Der Einfachheit halber sollte
  1116. <link linkend="zend.locale.getquestion">Zend_Locale's getQuestion
  1117. Methode</link> verwendet werden
  1118. </entry>
  1119. </row>
  1120. <row>
  1121. <entry><emphasis>CurrencyFraction</emphasis></entry>
  1122. <entry>
  1123. Gibt den Bruch der für eine angegebene Währung zu verwenden ist, zurück.
  1124. Die Währung muß als ISO Wert angegeben werden. Der Einfachheit halber
  1125. sollte <link linkend="zend.currency.introduction">Zend_Currency</link>
  1126. verwendet werden
  1127. </entry>
  1128. </row>
  1129. <row>
  1130. <entry><emphasis>CurrencyRounding</emphasis></entry>
  1131. <entry>
  1132. Gibt zurück wie eine angegebene Währung gerundet werden muß. Die Währung
  1133. muß als ISO Wert angegeben werden. Wenn die Währung nicht angegeben wird
  1134. das wird die 'DEFAULT' (Standard) Rundung zurückgegeben. Der Einfachheit
  1135. halber sollte <link
  1136. linkend="zend.currency.introduction">Zend_Currency</link> verwendet
  1137. werden
  1138. </entry>
  1139. </row>
  1140. <row>
  1141. <entry><emphasis>CurrencyToRegion</emphasis></entry>
  1142. <entry>
  1143. Gibt die Währung für eine angegebene Region zurück. Der Regionscode muß
  1144. als ISO3166 String angegeben werden zum Beispiel 'AT' für Österreich.
  1145. Der Einfachheit halber sollte <link
  1146. linkend="zend.currency.introduction">Zend_Currency</link>
  1147. verwendet werden
  1148. </entry>
  1149. </row>
  1150. <row>
  1151. <entry><emphasis>RegionToCurrency</emphasis></entry>
  1152. <entry>
  1153. Gibt die Regionen zurück in denen eine Währung verwendet wird. Die
  1154. Währung muß als ISO4217 Code angegeben werden, zum Beispiel 'EUR' für
  1155. Euro. Wenn eine Währung in mehreren Regionen verwendet wird, werden
  1156. diese Regionen mit einem Leerzeichen getrennt. Der Einfachheit halber
  1157. sollte <link linkend="zend.currency.introduction">Zend_Currency</link>
  1158. verwendet werden
  1159. </entry>
  1160. </row>
  1161. <row>
  1162. <entry><emphasis>RegionToTerritory</emphasis></entry>
  1163. <entry>
  1164. Gibt die Regionen für ein angegebenes Territorium zurück. Das
  1165. Territorium muß als ISO4217 String angegeben werden zum Beispiel '001'
  1166. für Weltweit. Die Regionen in diesem Territorium werden mit einem
  1167. Leerzeichen getrennt
  1168. </entry>
  1169. </row>
  1170. <row>
  1171. <entry><emphasis>TerritoryToRegion</emphasis></entry>
  1172. <entry>
  1173. Gibt die Territorien zurück in denen eine angegebene Region enthalten
  1174. ist. Diese Region muß als ISO3166 String angegeben werden zum Beispiel
  1175. 'AT' für Österreich. Wenn eine region in mehreren Territorien enthalten
  1176. ist, werden diese Territorien mit einem Leerzeichen getrennt
  1177. </entry>
  1178. </row>
  1179. <row>
  1180. <entry><emphasis>ScriptToLanguage</emphasis></entry>
  1181. <entry>
  1182. Gibt die Schriften zurück die in einer angegebenen Sprache verwendet
  1183. werden. Die Sprache muß als ISO Sprachcode angegeben werden zum Beispiel
  1184. 'en' für englisch. Wenn mehrere Schriften in einer Sprache verwendet
  1185. werden dann werden diese Schriften mit einem Leerzeichen getrennt
  1186. </entry>
  1187. </row>
  1188. <row>
  1189. <entry><emphasis>LanguageToScript</emphasis></entry>
  1190. <entry>
  1191. Gibt die Sprachen zurück die in einer angegebenen Schrift verwendet
  1192. werden. Die Schrift muß als ISO Schriftcode angegeben werden zum
  1193. Beispiel 'Latn' für lateinisch. Wenn eine Schrift in mehreren Sprachen
  1194. verwendet wird dann werden diese Sprachen mit einem Leerzeichen getrennt
  1195. </entry>
  1196. </row>
  1197. <row>
  1198. <entry><emphasis>TerritoryToLanguage</emphasis></entry>
  1199. <entry>
  1200. Gibt die Territorien zurück die in einer angegebenen Sprache verwendet
  1201. werden. Die Sprache muß als ISO Sprachcode angegeben werden zum Beispiel
  1202. 'en' für englisch. Wenn mehrere Sprachen in einem Territorien verwendet
  1203. werden dann werden diese Sprachen mit einem Leerzeichen getrennt
  1204. </entry>
  1205. </row>
  1206. <row>
  1207. <entry><emphasis>LanguageToTerritory</emphasis></entry>
  1208. <entry>
  1209. Gibt die Sprachen zurück die in einem angegebenen Territorium verwendet
  1210. werden. Das Territorium muß als ISO3166 Code angegeben werden zum
  1211. Beispiel 'IT' für italienisch. Wenn eine Sprache in mehreren Territorien
  1212. verwendet wird dann werden diese Territorien mit einem Leerzeichen
  1213. getrennt
  1214. </entry>
  1215. </row>
  1216. <row>
  1217. <entry><emphasis>TimezoneToWindows</emphasis></entry>
  1218. <entry>
  1219. Gibt eine ISO Zeitzone für eine angegebene Windows Zeitzone zurück
  1220. </entry>
  1221. </row>
  1222. <row>
  1223. <entry><emphasis>WindowsToTimezone</emphasis></entry>
  1224. <entry>
  1225. Gibt eine Windows Zeitzone für eine angegebene ISO Zeitzone zurück
  1226. </entry>
  1227. </row>
  1228. <row>
  1229. <entry><emphasis>TerritoryToTimezone</emphasis></entry>
  1230. <entry>Gibt ein Territorium für eine angegebene ISO Zeitzone zurück</entry>
  1231. </row>
  1232. <row>
  1233. <entry><emphasis>TimezoneToTerritory</emphasis></entry>
  1234. <entry>Gibt die ISO Zeitzone für ein angegebenes Territorium zurück</entry>
  1235. </row>
  1236. <row>
  1237. <entry><emphasis>CityToTimezone</emphasis></entry>
  1238. <entry>
  1239. Gibt eine lokalisierte Stadt für eine angegebene ISO Zeitzone zurück.
  1240. Nicht für alle Zeitzonen existiert eine Übersetzung einer Stadt
  1241. </entry>
  1242. </row>
  1243. <row>
  1244. <entry><emphasis>TimezoneToCity</emphasis></entry>
  1245. <entry>
  1246. Gibt die ISO Zeitzone für einen angegebenen lokalisierten Namen einer
  1247. Stadt zurück. Nicht für alle Städte existiert eine Zeitzone
  1248. </entry>
  1249. </row>
  1250. <row>
  1251. <entry><emphasis>PhoneToTerritory</emphasis></entry>
  1252. <entry>Gibt den Telefoncode für ein angegebenes Territorium (Region) zurück.
  1253. Der Code des Territoriums muß als ISO3166 String angegeben werden, z.B.
  1254. 'AT' für Österreich</entry>
  1255. </row>
  1256. <row>
  1257. <entry><emphasis>TerritoryToPhone</emphasis></entry>
  1258. <entry>
  1259. Gibt das Territorium (Region) zurück in dem ein Telefoncode verwendet
  1260. wird. Der Telefoncode muß als reiner Integerwert angegeben werden, z.B.
  1261. '43' für +43. Wenn ein Telefoncode verwendet wird der in mehreren
  1262. Territorien (Regionen) verwendet wird, werden diese Territorien mit
  1263. einem Leerzeichen getrennt
  1264. </entry>
  1265. </row>
  1266. <row>
  1267. <entry><emphasis>NumericToTerritory</emphasis></entry>
  1268. <entry>
  1269. Gibt den 3 stelligen Nummerncode für ein angegebenes Territorium
  1270. (Region) zurück. Der Code des Territoriums muß als ISO3166 String
  1271. angegeben werden, z.B. 'AR' für Österreich
  1272. </entry>
  1273. </row>
  1274. <row>
  1275. <entry><emphasis>TerritoryToNumeric</emphasis></entry>
  1276. <entry>
  1277. Gibt as Territorium (Region) für einen 3 stelligen Nummerncode zurück.
  1278. Der 3 stellige Nummerncode muß als reine Integerzahl angegeben werden,
  1279. zum Beispiel '43'
  1280. </entry>
  1281. </row>
  1282. <row>
  1283. <entry><emphasis>Alpha3ToTerritory</emphasis></entry>
  1284. <entry>
  1285. Gibt den 3 stelligen Zeichencode für ein angegebenes Territorium
  1286. (Region) zurück. Der Code des Territoriums (Region) muß als ISO3166
  1287. String angegeben werden, zum Beispiel 'AT' für Österreich
  1288. </entry>
  1289. </row>
  1290. <row>
  1291. <entry><emphasis>TerritoryToAlpha3</emphasis></entry>
  1292. <entry>
  1293. Gibt das Territorium (Region) für einen 3 stelligen Zeichencode zurück
  1294. </entry>
  1295. </row>
  1296. <row>
  1297. <entry><emphasis>PostalToTerritory</emphasis></entry>
  1298. <entry>
  1299. Gibt ein Regex für den Post Code eines angegebenen Territoriums zurück.
  1300. Das Territorium muss als ISO4217 String angegeben werden, zum Beispiel
  1301. '001' für Welt
  1302. </entry>
  1303. </row>
  1304. <row>
  1305. <entry><emphasis>NumberingSystem</emphasis></entry>
  1306. <entry>
  1307. Gibt ein Skript mit der Schreibweise der Ziffern zurück, die in diesem
  1308. Skript verwendet werden
  1309. </entry>
  1310. </row>
  1311. <row>
  1312. <entry><emphasis>FallbackToChar</emphasis></entry>
  1313. <entry>
  1314. Gibt ein Ersatzzeichen für ein oft verwendetes Unicode Zeichen zurück.
  1315. Das kann verwendet werden um zum Beispiel "©" mit "(C)" zu ersetzen
  1316. </entry>
  1317. </row>
  1318. <row>
  1319. <entry><emphasis>CharToFallback</emphasis></entry>
  1320. <entry>
  1321. Gibt ein Unicode Zeichen für ein oft verwendetes Ersatzzeichen zurück.
  1322. Das kann verwendet werden um zum Beispiel "(C)" mit "©" zu ersetzen
  1323. </entry>
  1324. </row>
  1325. <row>
  1326. <entry><emphasis>LocaleUpgrade</emphasis></entry>
  1327. <entry>
  1328. Gibt die Abhängigkeit eines Gebietsschemas zurück die
  1329. verwendet werden kann um eine Sprache in ein voll qualifiziertes
  1330. Gebietsschema hochzurüsten.
  1331. </entry>
  1332. </row>
  1333. </tbody>
  1334. </tgroup>
  1335. </table>
  1336. <note>
  1337. <para>
  1338. Mit dem Zend Framework 1.5 wurde verschiedene alte Typen umbenannt. Das wurde
  1339. notwendig durch verschiedene neue Typen, einige Schreibfehler und die Erhöhung der
  1340. Verwendbarkeit. Die folgende Tabelle zeigt eine Liste von alten und neuen Typen:
  1341. </para>
  1342. </note>
  1343. <table id="zend.locale.getdata.table-3">
  1344. <title>Unterschiede zwischen ZF 1.0 und ZF 1.5</title>
  1345. <tgroup cols="2">
  1346. <thead>
  1347. <row>
  1348. <entry>Alter Typ</entry>
  1349. <entry>Neuer Typ</entry>
  1350. </row>
  1351. </thead>
  1352. <tbody>
  1353. <row>
  1354. <entry>Country</entry>
  1355. <entry>Territory (mit dem Wert '2')</entry>
  1356. </row>
  1357. <row>
  1358. <entry>Calendar</entry>
  1359. <entry>Type (mit dem Wert 'calendar')</entry>
  1360. </row>
  1361. <row>
  1362. <entry>Month_Short</entry>
  1363. <entry>Month (mit dem Array('gregorian', 'format', 'abbreviated')</entry>
  1364. </row>
  1365. <row>
  1366. <entry>Month_Narrow</entry>
  1367. <entry>Month (mit dem Array('gregorian', 'stand-alone', 'narrow')</entry>
  1368. </row>
  1369. <row>
  1370. <entry>Month_Complete</entry>
  1371. <entry>Months</entry>
  1372. </row>
  1373. <row>
  1374. <entry>Day_Short</entry>
  1375. <entry>Day (mit dem Array('gregorian', 'format', 'abbreviated')</entry>
  1376. </row>
  1377. <row>
  1378. <entry>Day_Narrow</entry>
  1379. <entry>Day (mit dem Array('gregorian', 'stand-alone', 'narrow')</entry>
  1380. </row>
  1381. <row>
  1382. <entry>DateFormat</entry>
  1383. <entry>Date</entry>
  1384. </row>
  1385. <row>
  1386. <entry>TimeFormat</entry>
  1387. <entry>Time</entry>
  1388. </row>
  1389. <row>
  1390. <entry>Timezones</entry>
  1391. <entry>CityToTimezone</entry>
  1392. </row>
  1393. <row>
  1394. <entry>Currency</entry>
  1395. <entry>NameToCurrency</entry>
  1396. </row>
  1397. <row>
  1398. <entry>Currency_Sign</entry>
  1399. <entry>CurrencySymbol</entry>
  1400. </row>
  1401. <row>
  1402. <entry>Currency_Detail</entry>
  1403. <entry>CurrencyToRegion</entry>
  1404. </row>
  1405. <row>
  1406. <entry>Territory_Detail</entry>
  1407. <entry>TerritoryToRegion</entry>
  1408. </row>
  1409. <row>
  1410. <entry>Language_Detail</entry>
  1411. <entry>LanguageToTerritory</entry>
  1412. </row>
  1413. </tbody>
  1414. </tgroup>
  1415. </table>
  1416. <para>
  1417. Das folgende Beispiel zeigt wie man die Namen für Dinge in verschiedenen Sprachen
  1418. erhalten kann.
  1419. </para>
  1420. <example id="zend.locale.getdata.example-3">
  1421. <title>getTranslationList</title>
  1422. <programlisting language="php"><![CDATA[
  1423. $locale = new Zend_Locale('en_US');
  1424. // Gibt die Namen aller Länder in der Französischen Sprache aus
  1425. print_r(Zend_Locale::getTranslationList('country', 'fr'));
  1426. ]]></programlisting>
  1427. </example>
  1428. <para>
  1429. Das nächste Beispiel zeigt wie der Name einer Sprache in einer anderen Sprache gefunden
  1430. werden kann, wenn der zwei-Zeichen ISO Länder-Code unbekannt ist.
  1431. </para>
  1432. <example id="zend.locale.getdata.example-4">
  1433. <title>Konvertierung des Ländernamens von einer Sprache in eine andere Sprache</title>
  1434. <programlisting language="php"><![CDATA[
  1435. $locale = new Zend_Locale('en_US');
  1436. $code2name = $locale->getLanguageTranslationList();
  1437. $name2code = array_flip($code2name);
  1438. $frenchCode = $name2code['French'];
  1439. echo $locale->getLanguageTranslation($frenchCode, 'es');
  1440. // Ausgegeben wird der Spanische Name der Fransösischen Sprache
  1441. ]]></programlisting>
  1442. </example>
  1443. <para>
  1444. Um von <classname>Zend_Locale</classname> eine Liste aller bekannten Sprachen zu
  1445. bekommen wobei jede Sprache in Ihrer eigenen Sprache geschrieben wird, kann das untere
  1446. Beispiel in einer Web Seite benutzt werden. Genauso können
  1447. <code>getCountryTranslationList()</code> und <code>getCountryTranslation()</code>
  1448. benutzt werden um eine Tabelle zu erhalten die Namen für Muttersprachen einer Region und
  1449. Namen für Regionen in einer anderen Sprache zu erhalten. Man muß einen <code>try ..
  1450. catch</code> Block benutzen um Ausnahmen abzufangen die auftreten wenn ein Gebietsschema
  1451. benutzt wird das nicht existiert. Nicht alle Sprachen sind auch ein Gebietsschema. Im
  1452. Beispiel werden die Ausnahmen ignoriert um einen frühen Abbruch zu verhindern.
  1453. </para>
  1454. <example id="zend.locale.getdata.example-6">
  1455. <title>Alle Sprachen geschrieben in Ihrer Muttersprache</title>
  1456. <programlisting language="php"><![CDATA[
  1457. $list = Zend_Locale::getLanguageTranslationList('auto');
  1458. foreach($list as $language => $content) {
  1459. try {
  1460. $output = Zend_Locale::getLanguageTranslation($language, $language);
  1461. if (is_string($output)) {
  1462. print "\n<br>[".$language."] ".$output;
  1463. }
  1464. } catch (Exception $e) {
  1465. continue;
  1466. }
  1467. }
  1468. ]]></programlisting>
  1469. </example>
  1470. </sect2>
  1471. <sect2 id="zend.locale.getquestion">
  1472. <title>Übersetzungen für "Ja" und "Nein" erhalten</title>
  1473. <para>
  1474. Oft müssen Programme eine "Ja" oder "Nein" Rückmeldung eines Benutzers erkennen.
  1475. <code>getQuestion()</code> gibt ein Array zurück welches die richtigen Wörter oder Regex
  1476. Zeichenketten enthält um einem Benutzer in einer bestimmten $locale zu antworten
  1477. (Standardmäßig das aktuelle Gebietsschema des Objekts). Das zurückgegebene Array enthält
  1478. die folgenden Informationen:
  1479. </para>
  1480. <itemizedlist>
  1481. <listitem>
  1482. <para>
  1483. <emphasis>
  1484. yes und no</emphasis>: Eine generelle Stringrepräsentation für Ja und Nein
  1485. Antworten. Es enthält die erste und generellste Antwort von yesarray und
  1486. noarray.
  1487. </para>
  1488. <para>
  1489. <emphasis>yesarray und noarray</emphasis>: Ein Array mit allen bekannten
  1490. Ja und Nein Antworten. Diverse Sprachen haben mehr als nur zwei Antworten.
  1491. Normalerweise ist das der komplette String und seine Abkürzung.
  1492. </para>
  1493. <para>
  1494. <emphasis>yesexpr und noexpr</emphasis>: Ein ersteller Regex String des es
  1495. erlaubt Benutzerantworten zu behandeln und nach Ja und Nein zu suchen.
  1496. </para>
  1497. </listitem>
  1498. </itemizedlist>
  1499. <para>
  1500. Alle diese Informationen sind natürlich lokalisiert und hängen vom eingestellten
  1501. Gebietsschema ab. Das folgende Beispiel zeigt die Informationen die empfangen werden
  1502. können:
  1503. </para>
  1504. <example id="zend.locale.getquestion.example-1">
  1505. <title>getQuestion()</title>
  1506. <programlisting language="php"><![CDATA[
  1507. $locale = new Zend_Locale();
  1508. // Zeichenketten für Fragen
  1509. print_r($locale->getQuestion('de'));
  1510. - - - Output - - -
  1511. Array
  1512. (
  1513. [yes]ja[/yes]
  1514. [no]nein[/no]
  1515. [yesabbr]j[/yesabbr]
  1516. [noabbr]n[/noabbr]
  1517. [yesexpr]^([yY]([eE][sS])?)|([jJ][aA]?)[/yesexpr]
  1518. [noexpr]^([nN]([oO]|([eE][iI][nN]))?)[/noexpr]
  1519. )
  1520. ]]></programlisting>
  1521. </example>
  1522. </sect2>
  1523. <sect2 id="zend.locale.getlocalelist">
  1524. <title>Eine Liste aller bekannten Gebietsschemata erhalten</title>
  1525. <para>
  1526. Manchmal will man eine Liste aller bekannten Gebietsschemata erhalten. Das kann für die
  1527. verschiedensten Aufgaben nützlich sein, zum Beispiel für die Erstellung einer
  1528. Auswahlbox. Für diesen Zweck kann die statische <code>getLocaleList()</code> Methode
  1529. verwender werden, welche eine Liste aller bekannten Gebietsschemata zurückgibt.
  1530. </para>
  1531. <example id="zend.locale.getlocalelist.example-1">
  1532. <title>getLocaleList()</title>
  1533. <programlisting language="php"><![CDATA[
  1534. $localelist = Zend_Locale::getLocaleList();
  1535. ]]></programlisting>
  1536. </example>
  1537. <note>
  1538. <para>
  1539. Es ist zu beachten das die Gebietsschemata als Schlüssel des Arrays das man erhält
  1540. zurück gegeben werden. Der Wert ist immer ein Boolsches True.
  1541. </para>
  1542. </note>
  1543. </sect2>
  1544. <sect2 id="zend.locale.detection">
  1545. <title>Erkennen von Gebietsschemata</title>
  1546. <para>
  1547. Wenn man erkennen will ob eine vorhandene Eingabe. unabhängig von Ihrer Quelle, ein
  1548. Gebietsschema ist, sollte man die statische <code>isLocale()</code> Methode verwenden.
  1549. Der erste Parameter dieser Methode ist der String den man prüfen will.
  1550. </para>
  1551. <example id="zend.locale.detection.example-1">
  1552. <title>Einfache Erkennung des Gebietsschemas</title>
  1553. <programlisting language="php"><![CDATA[
  1554. $input = 'to_RU';
  1555. if (Zend_Locale::isLocale($input)) {
  1556. print "'{$input}' ist ein Gebietsschema";
  1557. } else {
  1558. print "Sorry... die vorhandene Eingabe ist kein Gebietsschema";
  1559. }
  1560. ]]></programlisting>
  1561. </example>
  1562. <para>
  1563. Wie man sieht ist die Ausgabe dieser Methode immer ein boolscher Wert. Es gibt nur einen
  1564. Grund warum man eine Ausnahme erhält wenn diese Methode aufgerufen wird. Wenn das eigene
  1565. System kein Gebietsschema anbietet und Zend Framework nicht in der Lage ist dieses
  1566. automatisch zu erkennen. Normalerweise zeigt dieses, das ein Problem mit dem eigenen OS
  1567. in Kombination mit PHP's <code>setlocale()</code> vorhanden ist.
  1568. </para>
  1569. <para>
  1570. Man sollte auch beachten das jeder angegebene Gebietsschema String automatisch
  1571. degradiert wird wenn der Regionsabschnitt für dieses Gebietsschema nicht existiert. In
  1572. unserem vorherigen Beispiel existiert die Region <code>'RU'</code> nicht für die Sprache
  1573. <code>'to'</code>, aber es wird trotzdem true zurückgegeben da
  1574. <classname>Zend_Locale</classname> mit der vorhandenen Eingabe arbeiten kann.
  1575. </para>
  1576. <para>
  1577. Trotzdem ist es manchmal nützlich diese automatische Degradierung zu verhindern, und
  1578. hier kommt der zweite Parameter von <code>isLocale()</code> zu Tragen. Der
  1579. <code>strict</code> Parameter ist Standardmäßig <constant>FALSE</constant> und kann verwendet
  1580. werden um die automatische Degradierung zu verhindern wenn er auf <constant>TRUE</constant>
  1581. gesetzt wird.
  1582. </para>
  1583. <example id="zend.locale.detection.example-2">
  1584. <title>Strikte Erkennung des Gebietsschemas</title>
  1585. <programlisting language="php"><![CDATA[
  1586. $input = 'to_RU';
  1587. if (Zend_Locale::isLocale($input, true)) {
  1588. print "'{$input}' ist ein Gebietsschema";
  1589. } else {
  1590. print "Sorry... die vorhandene Eingabe ist kein Gebietsschema";
  1591. }
  1592. ]]></programlisting>
  1593. </example>
  1594. <para>
  1595. Jetzt da man in der Lage zu Erkennen ob ein vorhandenen String ein Gebietsschema ist
  1596. kann man Gebietsschema bezogenes Verhalten in seine eigenen Klassen hinzufügen. Aber man
  1597. wird schnell erkennen das das immer zu den gleichen 15 Zeilen Code führt. Etwas
  1598. ähnliches wie das folgende Beispiel:
  1599. </para>
  1600. <example id="zend.locale.detection.example-3">
  1601. <title>Implementierung von Gebietsschema bezogenem Verhalten</title>
  1602. <programlisting language="php"><![CDATA[
  1603. if ($locale === null) {
  1604. $locale = new Zend_Locale();
  1605. }
  1606. if (!Zend_Locale::isLocale($locale, true, false)) {
  1607. if (!Zend_Locale::isLocale($locale, false, false)) {
  1608. throw new Zend_Locale_Exception(
  1609. "Das Gebietsschema '$locale' ist kein bekanntes Gebietsschema");
  1610. }
  1611. $locale = new Zend_Locale($locale);
  1612. }
  1613. if ($locale instanceof Zend_Locale) {
  1614. $locale = $locale->toString();
  1615. }
  1616. ]]></programlisting>
  1617. </example>
  1618. <para>
  1619. Mit Zend Framework 1.8 haben wir die statische <code>findLocale()</code> Methode
  1620. hinzugefügt welche einen Gebietsschema-String zurückgibt mit dem man arbeiten kann. Sie
  1621. führt die folgenden Arbeiten durch:
  1622. </para>
  1623. <itemizedlist>
  1624. <listitem>
  1625. <para>
  1626. Erkennt ob ein angegebener String ein Gebietsschema ist
  1627. </para>
  1628. </listitem>
  1629. <listitem>
  1630. <para>
  1631. Degradiert das Gebietsschema wenn es in der angegebenen Region nicht existiert
  1632. </para>
  1633. </listitem>
  1634. <listitem>
  1635. <para>
  1636. Gibt das vorher gesetzte Anwendungsweite Gebietsscheam zurück wenn keine Eingabe
  1637. angegeben wurde
  1638. </para>
  1639. </listitem>
  1640. <listitem>
  1641. <para>
  1642. Erkennt das Gebietsschema vom Browser wenn die vorherigen Erkennungen
  1643. fehlgeschlagen sind
  1644. </para>
  1645. </listitem>
  1646. <listitem>
  1647. <para>
  1648. Erkennt das Gebietsschema vom Betriebssystem wenn die vorherigen Erkennungen
  1649. fehlgeschlagen sind
  1650. </para>
  1651. </listitem>
  1652. <listitem>
  1653. <para>
  1654. Erkennt das Gebietsschema vom Framework wenn die vorherigen Erkennungen
  1655. fehlgeschlagen sind
  1656. </para>
  1657. </listitem>
  1658. <listitem>
  1659. <para>
  1660. Gibt immer einen String zurück der das gefundene Gebietsschema repräsentiert
  1661. </para>
  1662. </listitem>
  1663. </itemizedlist>
  1664. <para>
  1665. Das folgende Beispiel zeigt wie diese Prüfungen und der obige Code mti einem einfachen
  1666. Aufruf vereinfacht werden kann:
  1667. </para>
  1668. <example id="zend.locale.detection.example-4">
  1669. <title>Gebietsschema bezogenes Verhalten mit ZF 1.8</title>
  1670. <programlisting language="php"><![CDATA[
  1671. $locale = Zend_Locale::findLocale($inputstring);
  1672. ]]></programlisting>
  1673. </example>
  1674. </sect2>
  1675. </sect1>