<?xml version="1.0" encoding="UTF-8"?>
<!-- EN-Revision: 24249 -->
<!-- Reviewed: no -->
<sect2 id="zend.filter.set.htmlentities">
    <title>HtmlEntities</title>

    <para>
        Gibt den String <varname>$value</varname> zurück, wobei Zeichen in Ihre
        <acronym>HTML</acronym> Entity Äquivalente konvertiert werden wenn diese existieren.
    </para>

    <sect3 id="zend.filter.set.htmlentities.options">
        <title>Unterstützte Optionen für Zend_Filter_HtmlEntities</title>

        <para>
            Die folgenden Optionen werden für <classname>Zend_Filter_HtmlEntities</classname>
            unterstützt:
        </para>

        <itemizedlist>
            <listitem>
                <para>
                    <emphasis><property>quotestyle</property></emphasis>: Äquivalent zum Parameter
                    <emphasis>quote_style</emphasis> der nativen <acronym>PHP</acronym> Funktion
                    htmlentities. Er erlaubt es zu definieren wass mit 'einfachen' und "doppelten"
                    Hochkomma passieren soll. Die folgenden Konstanten werden akzeptiert:
                    <constant>ENT_COMPAT</constant>, <constant>ENT_QUOTES</constant>
                    <constant>ENT_NOQUOTES</constant> wobei
                    <constant>ENT_COMPAT</constant> der Standardwert ist.
                </para>
            </listitem>

            <listitem>
                <para>
                    <emphasis><property>charset</property></emphasis>: Äquivalent zum Parameter
                    <emphasis>charset</emphasis> der nativen <acronym>PHP</acronym> Funktion
                    htmlentities. Er definiert das Zeichenset welches beim Filtern verwendet werden
                    soll. Anders als bei der nativen <acronym>PHP</acronym> Funktion ist der
                    Standardwert 'UTF-8'. Siehe "http://php.net/htmlentities" für eine Liste der
                    unterstützten Zeichensets.
                </para>

                <note>
                    <para>
                         Diese Option kann auch über den Parameter <varname>$options</varname>,
                         als <classname>Zend_Config</classname> Objekt oder als Array gesetzt
                         werden. Der Optionsschlüssel wird entweder als Zeichenset oder als
                         Kodierung akzeptiert.
                    </para>
                </note>
            </listitem>

            <listitem>
                <para>
                    <emphasis><property>doublequote</property></emphasis>: Äquivalent zum Parameter
                    <emphasis>double_encode</emphasis> der nativen <acronym>PHP</acronym> Funktion
                    htmlentities. Wenn er auf false gesetzt wird, werden existierende html entities
                    nicht kodiert. Der Standardwert ist es alles zu konvertieren (true).
                </para>

                <note>
                    <para>
                        Diese Option muss über den Parameter <varname>$options</varname> oder die
                        Methode <methodname>setDoubleEncode()</methodname> gesetzt werden.
                    </para>
                </note>
            </listitem>
        </itemizedlist>
    </sect3>

    <sect3 id="zend.filter.set.htmlentities.basic">
        <title>Einfache Verwendung</title>

        <para>
            Siehe das folgende Beispiel für das Standardverhalten dieses Filters.
        </para>

        <programlisting language="php"><![CDATA[
$filter = new Zend_Filter_HtmlEntities();

print $filter->filter('<');
]]></programlisting>
    </sect3>

    <sect3 id="zend.filter.set.htmlentities.quotestyle">
        <title>Hochkomma Stil</title>

        <para>
            <classname>Zend_Filter_HtmlEntities</classname> erlaubt es den verwendete Hochkomma Stil
            zu verändern. Dies kan nützlich sein wenn man doppelte, einfache oder beide Typen von
            Hochkommas un-gefiltert lassen will. Siehe das folgende Beispiel:
        </para>

        <programlisting language="php"><![CDATA[
$filter = new Zend_Filter_HtmlEntities(array('quotestyle' => ENT_QUOTES));

$input  = "Ein 'einfaches' und " . '"doppeltes"';
print $filter->filter($input);
]]></programlisting>

        <para>
            Das obige Beispiel gibt
            <emphasis>Ein &#039;einfaches&#039; und &quot;doppeltes&quot;</emphasis> zurück. Es ist
            zu beachten dass sowohl 'einfache' als auch "doppelte" Hochkommas gefiltert werden.
        </para>

        <programlisting language="php"><![CDATA[
$filter = new Zend_Filter_HtmlEntities(array('quotestyle' => ENT_COMPAT));

$input  = "Ein 'einfaches' und " . '"doppeltes"';
print $filter->filter($input);
]]></programlisting>

        <para>
            Das obige Beispiel gibt <emphasis>Ein 'einfaches' und &quot;doppeltes&quot;</emphasis>
            zurück. Es ist zu beachten dass "doppelte" Hochkommas gefiltert werden während 'einfache'
            Hochkommas nich verändert werden.
        </para>

        <programlisting language="php"><![CDATA[
$filter = new Zend_Filter_HtmlEntities(array('quotestyle' => ENT_NOQUOTES));

$input  = "Ein 'einfaches' und" . '"doppeltes"';
print $filter->filter($input);
]]></programlisting>

        <para>
            Das obige Beispiel gibt <emphasis>Ein 'einfaches' und "doppeltes"</emphasis> zurück.
            Es ist zu beachten dass "doppelte" oder 'einfache' Hochkommas verändert werden.
        </para>
    </sect3>

    <sect3 id="zend.filter.set.htmlentities.">
        <title>Helfer Methoden</title>

        <para>
            Um die Option <property>quotestyle</property> nach der Instanzierung zu erhalten
            oder zu ändern, können die zwei Methoden <methodname>setQuoteStyle()</methodname> und
            <methodname>getQuoteStyle()</methodname> verwendet werden.
            <methodname>setQuoteStyle()</methodname> akzeptiert einen <varname>$quoteStyle</varname>
            Parameter. Die folgenden Konstanten werden akzeptiert:
            <constant>ENT_COMPAT</constant>, <constant>ENT_QUOTES</constant>,
            <constant>ENT_NOQUOTES</constant>
        </para>

        <programlisting language="php"><![CDATA[
$filter = new Zend_Filter_HtmlEntities();

$filter->setQuoteStyle(ENT_QUOTES);
print $filter->getQuoteStyle(ENT_QUOTES);
]]></programlisting>

        <para>
            Um die Option <property>charset</property> nach der Instanzierung zu erhalten oder
            zu ändern, können die zwei Methoden <methodname>setCharSet()</methodname> und
            <methodname>getCharSet()</methodname> verwendet werden.
            <methodname>setCharSet()</methodname> akzeptiert einen <varname>$charSet</varname>
            Parameter. Siehe "http://php.net/htmlentities" für eine Liste der unterstützten
            Zeichensets.
        </para>

        <programlisting language="php"><![CDATA[
$filter = new Zend_Filter_HtmlEntities();

$filter->setQuoteStyle(ENT_QUOTES);
print $filter->getQuoteStyle(ENT_QUOTES);
]]></programlisting>

        <para>
            Um die Option <property>doublequote</property> nach der Instanzierung zu erhalten oder
            zu ändern, können die zwei Methoden <methodname>setDoubleQuote()</methodname> und
            <methodname>getDoubleQuote()</methodname> verwendet werden.
            <methodname>setDoubleQuote()</methodname> akzeptiert einen boolschen Parameter
            <varname>$doubleQuote</varname>.
        </para>

        <programlisting language="php"><![CDATA[
$filter = new Zend_Filter_HtmlEntities();

$filter->setQuoteStyle(ENT_QUOTES);
print $filter->getQuoteStyle(ENT_QUOTES);
]]></programlisting>
    </sect3>
</sect2>
<!--
vim:se ts=4 sw=4 et:
-->
