<?xml version="1.0" encoding="UTF-8"?>
<!-- EN-Revision: 24249 -->
<!-- Reviewed: no -->
<sect1 id="zend.currency.description">
    <title>Was macht eine Währung aus?</title>

    <para>
        Eine Währung besteht aus verschiedenen Informationen. Einem Namen, einer Abkürzung und einem
        Zeichen. Jeder dieser Werte könnte relevant sein um dargestellt zu werden, aber immer nur
        einer zur selben Zeit. Es würde keine gute Praxis sein etwas wie "USD 1.000 $" anzuzeigen.
    </para>

    <para>
        Hierfür unterstützt <classname>Zend_Currency</classname> die Definition der
        Währungsinformation welche dargestellt werden soll. Die folgenden Konstanten können
        verwendet werden:
    </para>

    <table id="zend.currency.description.table-1">
        <title>Dargestellte Informationen für eine Währung</title>

        <tgroup cols="2" align="left">
            <thead>
                <row>
                    <entry>Konstante</entry>
                    <entry>Beschreibung</entry>
                </row>
            </thead>

            <tbody>
                <row>
                    <entry><constant>NO_SYMBOL</constant></entry>
                    <entry>Es wird gar keine Darstellung einer Währung angezeigt</entry>
                </row>

                <row>
                    <entry><constant>USE_SYMBOL</constant></entry>

                    <entry>
                        Das Währungssymbol wird dargestellt. Für US Dollar wäre dies '$'
                    </entry>
                </row>

                <row>
                    <entry><constant>USE_SHORTNAME</constant></entry>

                    <entry>
                        Die Abkürzung für diese Währung wird dargestellt. Für US Dollar wäre dies
                        'USD'. Die meisten Abkürzungen bestehen aus 3 Zeichen.
                    </entry>
                </row>

                <row>
                    <entry><constant>USE_NAME</constant></entry>

                    <entry>
                        Der komplette Name für diese Währung wird dargestellt. Für US Dollar wäre
                        der komplette Name "US Dollar"
                    </entry>
                </row>
            </tbody>
        </tgroup>
    </table>

    <example id="zend.currency.description.example-1">
        <title>Auswahl der Währungsbeschreibung</title>

        <para>
            Angenommen unser Client setzt wieder "en_US" als Gebietsschema. Wenn keine Option
            verwendet wird könnte der zurückgegebene Wert wie folgt aussehen:
        </para>

        <programlisting language="php"><![CDATA[
$currency = new Zend_Currency(
    array(
        'value' => 100,
    )
);

print $currency; // Könnte '$ 100' zurückgeben
]]></programlisting>

        <para>
            Durch Angabe der richtigen Option kann definiert werden welche Information dargestellt
            werden soll.
        </para>

        <programlisting language="php"><![CDATA[
$currency = new Zend_Currency(
    array(
        'value'   => 100,
        'display' => Zend_Currency::USE_SHORTNAME,
    )
);

print $currency; // Könnte 'USD 100' zurückgeben
]]></programlisting>

        <para>
            Ohne Angabe von <property>display</property> wird das Währungssymbol für die Darstellung
            des Objekts verwendet. Wen die Währung kein Symbol hat wird die Abkürzung als Ersatz
            verwendet.
        </para>
    </example>

    <note>
        <title>Nicht alle Währungen haben Symbole</title>

        <para>
            Man sollte beachten das nicht alle Währungen standardmäßige Währungssymbole haben. Das
            bedeutet, wenn es kein Standardsymbol gibt, und das Symbol als dargestellt setzt, wird
            man überhaupt keine dargestellte Währung haben, da das Symbol ein leerer String ist.
        </para>
    </note>

    <para>
        Manchmal ist es notwendig die Standardinformationen zu ändern. Man kann jede der drei
        Währungsinformationen unabhängig setzen indem die richtige Option angegeben wird. Siehe
        das folgende Beispiel.
    </para>

    <example id="zend.currency.description.example-2">
        <title>Verändern der Beschreibung einer Währung</title>

        <para>
            Angenommen unser Client hat wieder mal "en_US" als Gebietsschema gesetzt. Aber jetzt
            wollen sie nicht die Standardeinstellungen verwenden sondern unsere eigene
            Beschreibung setzen. Das kann einfach durch Angabe der richtigen Option durchgeführt
            werden:
        </para>

        <programlisting language="php"><![CDATA[
$currency = new Zend_Currency(
    array(
        'value' => 100,
        'name'  => 'Dollar',
    )
);

print $currency; // Könnte 'Dollar 100' zurückgeben
]]></programlisting>

        <para>
            Man kann auch ein Symbol oder eine Abkürzung selbst setzen.
        </para>

        <programlisting language="php"><![CDATA[
$currency = new Zend_Currency(
    array(
        'value'    => 100,
        'symbol' => '$$$',
    )
);

print $currency; // Könnte '$$$ 100' zurückgeben
]]></programlisting>
    </example>

    <note>
        <title>Einstellungen für die automatische Anzeige</title>

        <para>
            Wenn man einen Namen, eine Abkürzung oder ein Symbol selbst setzt, dann werden diese
            neuen Informationen automatisch gesetzt und dargestellt. Diese Vereinfachung verhindert
            das man die richtige <property>display</property> Option angeben muss wenn eine
            Information gesetzt wird.
        </para>

        <para>
            Wenn man also die Option <property>sign</property> verwendet kann man
            <property>display</property> unterdrücken und muss diese nicht auf
            '<constant>USE_SYMBOL</constant>' setzen.
        </para>
    </note>
</sect1>
