Zend_Currency-Number.xml 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 24249 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.currency.number">
  5. <title>Wie sieht die Währung aus?</title>
  6. <para>
  7. Wie der Wert einer Währung dargestellt wird hängt hauptsächlich vom verwendeten
  8. Gebietsschema ab. Es gibt verschiedene Informationen welche vom Gebietsschema gesetzt
  9. werden. Jede von Ihnen kann manuell überschrieben werden indem die richtige Option
  10. verwendet wird.
  11. </para>
  12. <para>
  13. Zum Beispiel verwenden die meisten Gebietsschemata die lateinische Schreibweise für die
  14. darstellung von Ziffern. Aber es gibt Sprachen wie "Arabisch" welche andere Ziffern
  15. verwenden. Und wenn man eine arabische Website hat, will man möglicherweise andere
  16. Währungen auch durch Verwendung der arabischen Schreibweise darstellen. Siehe das folgende
  17. Beispiel:
  18. </para>
  19. <example id="zend.currency.number.example-1">
  20. <title>Verwendung einer eigenen Schreibweise</title>
  21. <para>
  22. Angenommen wir verwenden wieder unsere Währung "Dollar". Aber jetzt wollen wir unsere
  23. Währung durch Verwendung der arabischen Schreibweise darstellen.
  24. </para>
  25. <programlisting language="php"><![CDATA[
  26. $currency = new Zend_Currency(
  27. array(
  28. 'value' => 1000,
  29. 'script' => 'Arab',
  30. )
  31. );
  32. print $currency; // Könnte '$ ١٬٠٠٠٫٠٠' zurückgeben
  33. ]]></programlisting>
  34. </example>
  35. <para>
  36. Weitere Informationen über vorhandenen Schreibweisen können in
  37. <classname>Zend_Locale</classname>'s <link linkend="zend.locale.numbersystems">Kapitel über
  38. Zahlensysteme</link> nachgelesen werden.
  39. </para>
  40. <para>
  41. Aber auch die Formatierung der Währungszahl (Geldwert) kann verwändert werden. Standardmäßig
  42. hängt Sie vom verwendeten Gebietsschema ab. Sie enthält einen Separator der zwischen
  43. Tausendern verwendet wird, ein Zeichen das als Dezimalpunkt verwendet wird, sowie die
  44. verwendete Genauigkeit.
  45. </para>
  46. <programlisting language="php"><![CDATA[
  47. $currency = new Zend_Currency(
  48. array(
  49. 'value' => 1000,
  50. 'currency' => 'USD'
  51. 'format' => 'de',
  52. )
  53. );
  54. print $currency; // Könnte '$ 1.000' zurückgeben
  55. ]]></programlisting>
  56. <para>
  57. Es gibt zwei Wege um das Format zu definieren das verwendet wird. Man kann entweder ein
  58. Gebietsschema angeben oder ein Format manuell definieren.
  59. </para>
  60. <para>
  61. Wenn man ein Gebietsschema für die Definierung des Formats verwendet wird alles automatisch
  62. gesetzt. Das Gebietsschema 'de' zum Beispiel,definiert '.' als Separator für die
  63. Tausender, und ',' als Dezimalpunkt. Im englischen ist es genau umgekehrt.
  64. </para>
  65. <programlisting language="php"><![CDATA[
  66. $currency_1 = new Zend_Currency(
  67. array(
  68. 'value' => 1000,
  69. 'currency' => 'USD'
  70. 'format' => 'de',
  71. )
  72. );
  73. $currency_2 = new Zend_Currency(
  74. array(
  75. 'value' => 1000,
  76. 'currency' => 'USD'
  77. 'format' => 'en',
  78. )
  79. );
  80. print $currency_1; // Könnte '$ 1.000' zurückgeben
  81. print $currency_2; // Könnte '$ 1,000' zurückgeben
  82. ]]></programlisting>
  83. <para>
  84. Wenn man es manuell definiert muss es dem Format entsprechen welches in <link
  85. linkend="zend.locale.number.localize.table-1">diesem Kapitel über Lokalisierung</link>
  86. beschrieben wird. Siehe das folgende:
  87. </para>
  88. <programlisting language="php"><![CDATA[
  89. $currency = new Zend_Currency(
  90. array(
  91. 'value' => 1000,
  92. 'currency' => 'USD'
  93. 'format' => '#0',
  94. )
  95. );
  96. print $currency; // Könnte '$ 1000' zurückgeben
  97. ]]></programlisting>
  98. <para>
  99. Im obigen Abschnitt haben wir den Separator und auch die Genauigkeit gelöscht.
  100. </para>
  101. </sect1>