htmlentities () vs. htmlspecialchars ()

543

Was sind die Unterschiede zwischen htmlspecialchars()und htmlentities(). Wann sollte ich das eine oder andere verwenden?

Eric Hogue
quelle

Antworten:

343

Aus der PHP-Dokumentation für HTML-Entitäten :

Diese Funktion ist htmlspecialchars()in jeder Hinsicht identisch , außer dass htmlentities()alle Zeichen, die Entitätsäquivalente für HTML-Zeichen aufweisen, in diese Entitäten übersetzt werden.

Aus der PHP-Dokumentation für htmlspecialchars :

Bestimmte Zeichen haben in HTML eine besondere Bedeutung und sollten durch HTML-Entitäten dargestellt werden, um ihre Bedeutung zu erhalten. Diese Funktion gibt eine Zeichenfolge mit einigen dieser Konvertierungen zurück. Die Übersetzungen sind die nützlichsten für die tägliche Webprogrammierung. Wenn Sie die Übersetzung aller HTML-Zeichenelemente benötigen, verwenden Sie htmlentities()stattdessen.

Der Unterschied ist, was verschlüsselt wird. Die Auswahlmöglichkeiten sind alles (Entitäten) oder "Sonderzeichen", wie kaufmännisches Und, doppelte und einfache Anführungszeichen, kleiner als und größer als (Sonderzeichen).

Ich bevorzuge es htmlspecialcharswann immer möglich zu verwenden.

Zum Beispiel:

    echo htmlentities('<Il était une fois un être>.');
    // Output: &lt;Il &eacute;tait une fois un &ecirc;tre&gt;.
    //                ^^^^^^^^                 ^^^^^^^

    echo htmlspecialchars('<Il était une fois un être>.');
    // Output: &lt;Il était une fois un être&gt;.
    //                ^                 ^
Thomas Owens
quelle
31
Vielen Dank für die Antwort, aber würden Sie gerne näher darauf eingehen, was Sie bevorzugen, htmlspecialchars()wann immer dies möglich ist, abgesehen von den offensichtlichen Unterschieden? Welche Situationen werden htmlentities()Ihnen Probleme bereiten, andere htmlspecialchars()nicht?
MikeSchinkel
17
Ich bin gerade auf ein Problem gestoßen, weil ich htmlentities anstelle von htmlspecialchars verwendet habe! Wenn Ihre Site UTF8-codiert ist, werden spezielle Symbole wie ¡™ £ ¢ ∞§¶ in kleine schwarze Diamanten mit Fragezeichen umgewandelt, da htmlentities nicht weiß, wie sie damit umgehen sollen, htmlspecialchars jedoch.
Darius
32
@Darius Was du sagst, ergibt keinen Sinn. htmlentitiesund htmlspecialcharskönnen beide UTF-8 verarbeiten, solange Sie "UTF-8"für das dritte Argument angeben .
Artefacto
14
Ab PHP 5.4 ist UTF-8 die Standardcodierungsoption (drittes Argument).
Jonathan
7
@Darius: Wir sind auf etwas Ähnliches gestoßen. Wie wir verwenden Sie wahrscheinlich PHP, das älter als 5.4.0 ist. Aus Jonathans Kommentar schließen wir also, dass wir UTF-8 explizit wie folgt angeben müssen: htmlentities ($ str, ENT_QUOTES, 'UTF-8');
Rinogo
378

htmlspecialchars könnte genutzt werden:

  1. Wenn nicht alle Zeichen codiert werden müssen, deren HTML-Entsprechungen vorliegen.

    Wenn Sie wissen, dass die Seitencodierung mit den speziellen Textsymbolen übereinstimmt, warum sollten Sie diese verwenden htmlentities? htmlspecialcharsist sehr einfach und erzeugt weniger Code, der an den Client gesendet werden muss.

    Zum Beispiel:

    echo htmlentities('<Il était une fois un être>.');
    // Output: &lt;Il &eacute;tait une fois un &ecirc;tre&gt;.
    //                ^^^^^^^^                 ^^^^^^^
    
    echo htmlspecialchars('<Il était une fois un être>.');
    // Output: &lt;Il était une fois un être&gt;.
    //                ^                 ^

    Der zweite ist kürzer und verursacht keine Probleme, wenn der Zeichensatz ISO-8859-1 eingestellt ist.

  2. Wenn die Daten nicht nur über einen Browser verarbeitet werden (um das Dekodieren von HTML-Entitäten zu vermeiden),

  3. Wenn die Ausgabe XML ist (siehe die Antwort von Artefacto ).

Arseni Mourzenko
quelle
4
htmlspecialchars ($ str, ENT_QUOTES, "UTF-8") ist am besten geeignet, wenn Sie eine PHP-Version vor 5.4 verwenden. ENT_QUOTES ist ein Muss, um einfache Anführungszeichen zu codieren.
Tarik
97

Dies wird mit codiert htmlentities.

implode( "\t", array_values( get_html_translation_table( HTML_ENTITIES ) ) )::

"& <>
Es ist ... Ô Õ Ö × Ø ü ü ü ü Ý þ ß à â â â â â æ ç è é ê ë ì í î ï dn o o o o ö ÷ ø ü ü ü ü ý þ ÿ œ œ Ss Ÿ ƒ ~ Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ Ν Ξ Ο Π Ρ Σ Τ Υ Φ Χ Ψ Ω α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ ς σ τ υ φ χ ψ - ∉ ∋ ∏ ∑ - ∗ √ √ ∞ ∞ ∧ ∨∩ ∪ ∫ ∴ ~ ≅ ≈ ≠ ≡ ≤ ≥ ⊂ ⊃ ⊄ ⊆ ⊇ ⊕ ⊗ ⊥ ⋅ ⌈ ⌉ ⌊ ⌋ ⟨⟩ ◊ ♠ ♣ ♥ ♦

Dies wird mit codiert htmlspecialchars.

implode( "\t", array_values( get_html_translation_table( HTML_SPECIALCHARS ) ) )::

"& <>

Berky
quelle
3
In acht nehmen! Auf den ersten Blick sieht htmlentities ziemlich vollständig aus. Aber es fehlen eine Reihe wirklich grundlegender und allgemeiner Charaktere (besonders wenn Ihre Kunden MS mögen). Intelligente Anführungszeichen (z. B. 'oder & rsquo;), Bindestriche (z. B. - oder & mdash), Markenzeichen (™ oder & trade;) und viele andere führen dazu, dass null zurückgegeben wird.
Jonathan Lidbeck
9
@ Jonathan die sind in der Liste. Wenn Sie ein leeres Ergebnis erhalten, haben Sie die Codierung wahrscheinlich falsch angegeben.
Artefacto
4
Oder Sie haben die Codierung nicht angegeben und sich auf die Standardeinstellung verlassen, die sich in PHP 5.4 und dann (möglicherweise) erneut in PHP 5.6 geändert hat, abhängig von Ihrer Konfiguration. Bis 2012 wurde in der Dokumentation nicht einmal empfohlen, den Parameter anzugeben. Wenn Sie also den optionalen dritten Parameter nicht angegeben und PHP aktualisiert haben, haben htmlentities zuerst ISO-8859-1 verwendet, dann UTF-8 und dann alles in Ihrer php.ini, ohne einen Fehler bei irgendwelchen Problemen auszulösen. aber leise nichts zurückgeben. Dies könnte natürlich niemals zu einem Datenverlust führen!
Aaa
96

Weil:

  • Manchmal schreiben Sie XML-Daten und können keine HTML-Entitäten in einer XML-Datei verwenden.
  • Weil htmlentitiesmehr Zeichen als ersetzt werden htmlspecialchars. Dies ist nicht erforderlich, macht das PHP-Skript weniger effizient und den resultierenden HTML-Code weniger lesbar.

htmlentities Dies ist nur erforderlich, wenn Ihre Seiten Codierungen wie ASCII oder LATIN-1 anstelle von UTF-8 verwenden und Sie Daten mit einer anderen Codierung als die der Seite verarbeiten.

Artefakt
quelle
19

Sie sollten verwenden, htmlspecialchars($strText, ENT_QUOTES)wenn Ihre Zeichenfolge nur XML- und HTML-sicher sein soll:

Zum Beispiel codieren

  • & bis & amp;
  • "zu & ​​quot;
  • <bis & lt;
  • > zu & gt;
  • 'bis & # 039;

Wenn Sie jedoch auch zusätzliche Zeichen haben, die Unicode oder ungewöhnliche Symbole in Ihren Text dann sollten Sie htmlentities () verwenden , um sie richtig in Ihre HTML - Seite sicherzustellen angezeigt.

Anmerkungen:

  • 'wird nur von htmlspecialchars () bis & # 039; wenn die Option ENT_QUOTES übergeben wird. & # 039; ist sicherer zu verwenden als & apos; da ältere Versionen von Internet Explorer die & apos; Entität.
  • Technisch gesehen muss> nicht gemäß der XML-Spezifikation codiert werden, wird jedoch normalerweise auch codiert, um die Übereinstimmung mit der Anforderung der Codierung zu gewährleisten.
Kmeixner
quelle
2
Die Frage ist: Da mein Text vom Benutzer bereitgestellt wird, weiß ich nicht, ob ich Unicode- oder ungewöhnliche Symbole darin habe. warum sollte ich in diesem Fall htmlspecialchars verwenden?
EKanadily
14

htmlspecialchars ()führt die Mindestcodierungsmenge aus, um sicherzustellen, dass Ihre Zeichenfolge nicht als HTML analysiert wird. Dadurch ist Ihre Zeichenfolge besser lesbar als bei Verwendunghtmlentities () absolut alles codiert hätten, was eine Codierung enthält.

Grossvogel
quelle
14

Ich habe gerade von der get_html_translation_tableFunktion erfahren. Sie übergeben es HTML_ENTITIESoder HTML_SPECIALCHARSund es gibt ein Array mit den Zeichen zurück, die codiert werden und wie sie codiert werden.

Eric Hogue
quelle
4
Dies ist nützlich, wenn Sie Ihre eigene Funktion erstellen möchten, beispielsweise um einige zusätzliche Charaktere zu ersetzen oder andere magische Dinge zu tun.
Jochem Kuijpers
9

htmlentities - Konvertiert alle zutreffenden Zeichen in HTML-Entitäten.

htmlspecialchars - Konvertieren Sie Sonderzeichen in HTML-Entitäten.

Bei den Übersetzungen wurden folgende Übersetzungszeichen ausgeführt:

  • '&' (kaufmännisches Und) wird zu '& amp;'
  • '"' (doppeltes Anführungszeichen) wird zu '& quot;' wenn ENT_NOQUOTES nicht gesetzt ist.
  • "'" (einfaches Anführungszeichen) wird zu' & # 039; ' (oder ') nur wenn ENT_QUOTES gesetzt ist.
  • '<' (kleiner als) wird zu '& lt;'
  • '>' (größer als) wird zu '& gt;'

Sie können den folgenden Code überprüfen, um weitere Informationen zu HTML-Eigenschaften und HTML-Spezialchars zu erhalten:

https://gist.github.com/joko-wandiro/f5c935708d9c37d8940b

Joko Wandiro
quelle
7

Sie möchten wahrscheinlich eine Unicode-Zeichencodierung verwenden, z. B. UTF-8 und htmlspecialchars. Da ist es nicht irgendeine Notwendigkeit „HTML - Entitäten“ für „alle [die] anwendbar Zeichen“ zu erzeugen (das , was htmlentities ist tut nach der Dokumentation) , wenn es bereits in Ihrem Zeichensatz ist.

cic
quelle
3

Ein kleines Beispiel: Ich musste 2 Client-Namen in einer Funktion indizieren lassen:

[1] => Altisoxxce Soluxxons S r.l.
[5] => Joxxson & Joxxson

Ich habe ursprünglich $term = get_term_by('name', htmlentities($name), 'client');zu Begriffsnamen geführt, die nur das kaufmännische Und-Element (&), nicht aber das Element mit Akzent enthielten. Aber als ich die Variableneinstellung auf htmlspecialcharsbeide änderte, konnten beide die Funktion durchlaufen. Hoffe das hilft!

learn2reid
quelle
3

Die Unterschiede zwischen htmlspecialchars () und htmlentities () sind sehr gering. Sehen wir uns einige Beispiele an:

htmlspecialchars

htmlspecialchars (Zeichenfolge $ string) verwendet mehrere Argumente, wobei das erste Argument eine Zeichenfolge ist und alle anderen Argumente (bestimmte Flags, bestimmte Codierungen usw.) optional sind. htmlspecialchars konvertiert Sonderzeichen in der Zeichenfolge in HTML-Entitäten. Zum Beispiel , wenn Sie <br> in der Zeichenfolge, htmlspecialchars wird es in konvertieren & lt; b & gt; . Während Zeichen wie µ † usw. in HTML keine besondere Bedeutung haben. Daher werden sie von der Funktion htmlspecialchars nicht in HTML-Entitäten konvertiert , wie im folgenden Beispiel gezeigt.

echo htmlspecialchars('An example <br>'); // This will print - An example &lt; br &gt;
echo htmlspecialchars('µ †');             // This will print -  µ †

htmlentities

htmlentities (string $ string) ist htmlspecialchars sehr ähnlich und verwendet mehrere Argumente, wobei das erste Argument ein String ist und alle anderen Argumente optional sind (bestimmte Flags, bestimmte Codierungen usw.). Im Gegensatz zu htmlspecialchars , htmlentities wandelt nicht nur Sonderzeichen in der Zeichenfolge in HTML - Entitäten , sondern alle geeigneten Zeichen in HTML - Entitäten.

echo htmlentities('An example <br>'); // This will print - An example &lt; br &gt;
echo htmlentities('µ †');             // This will print -  &micro; &dagger; 
N Randhawa
quelle
2
**HTML Character Entity Reference Chart at W3.org**

https://dev.w3.org/html5/html-author/charref

&Tab;
&NewLine;
!
&excl;
"
&quot; &QUOT;
#
&num;
$
&dollar;
%
&percnt;
&
&amp; &AMP;
'
&apos;
(
&lpar;
)
&rpar;
*
&ast; &midast;
+
&plus;
,
&comma;
.
&period;
/
&sol;
:
&colon;
;
&semi;
<
&lt; &LT;
=
&equals;
>
&gt; &GT;
?
&quest;
@
&commat;
[
&lsqb; &lbrack;
\
&bsol;
]
&rsqb; &rbrack;
^
&Hat;
_
&lowbar;
`
&grave; &DiacriticalGrave;
{
&lcub; &lbrace;
|
&verbar; &vert; &VerticalLine;
}
&rcub; &rbrace;

&nbsp; &NonBreakingSpace;
¡
&iexcl;
¢
&cent;
£
&pound;
¤
&curren;
¥
&yen;
¦
&brvbar;
§
&sect;
¨
&Dot; &die; &DoubleDot; &uml;
©
&copy; &COPY;
ª
&ordf;
«
&laquo;
¬
&not;
&shy;
®
&reg; &circledR; &REG;
¯
&macr; &OverBar; &strns;
°
&deg;
±
&plusmn; &pm; &PlusMinus;
²
&sup2;
³
&sup3;
´
&acute; &DiacriticalAcute;
µ
&micro;
¶
&para;
·
&middot; &centerdot; &CenterDot;
¸
&cedil; &Cedilla;
¹
&sup1;
º
&ordm;
»
&raquo;
¼
&frac14;
½
&frac12; &half;
¾
&frac34;
¿
&iquest;
À
&Agrave;
Á
&Aacute;
Â
&Acirc;
Ã
&Atilde;
Ä
&Auml;
Å
&Aring;
Æ
&AElig;
Ç
&Ccedil;
È
&Egrave;
É
&Eacute;
Ê
&Ecirc;
Ë
&Euml;
Ì
&Igrave;
Í
&Iacute;
Î
&Icirc;
Ï
&Iuml;
Ð
&ETH;
Ñ
&Ntilde;
Ò
&Ograve;
Ó
&Oacute;
Ô
&Ocirc;
Õ
&Otilde;
Ö
&Ouml;
×
&times;
Ø
&Oslash;
Ù
&Ugrave;
Ú
&Uacute;
Û
&Ucirc;
Ü
&Uuml;
Ý
&Yacute;
Þ
&THORN;
ß
&szlig;
à
&agrave;
á
&aacute;
â
&acirc;
ã
&atilde;
ä
&auml;
å
&aring;
æ
&aelig;
ç
&ccedil;
è
&egrave;
é
&eacute;
ê
&ecirc;
ë
&euml;
ì
&igrave;
í
&iacute;
î
&icirc;
ï
&iuml;
ð
&eth;
ñ
&ntilde;
ò
&ograve;
ó
&oacute;
ô
&ocirc;
õ
&otilde;
ö
&ouml;
÷
&divide; &div;
ø
&oslash;
ù
&ugrave;
ú
&uacute;
û
&ucirc;
ü
&uuml;
ý
&yacute;
þ
&thorn;
ÿ
&yuml;
Ā
&Amacr;
ā
&amacr;
Ă
&Abreve;
ă
&abreve;
Ą
&Aogon;
ą
&aogon;
Ć
&Cacute;
ć
&cacute;
Ĉ
&Ccirc;
ĉ
&ccirc;
Ċ
&Cdot;
ċ
&cdot;
Č
&Ccaron;
č
&ccaron;
Ď
&Dcaron;
ď
&dcaron;
Đ
&Dstrok;
đ
&dstrok;
Ē
&Emacr;
ē
&emacr;
Ė
&Edot;
ė
&edot;
Ę
&Eogon;
ę
&eogon;
Ě
&Ecaron;
ě
&ecaron;
Ĝ
&Gcirc;
ĝ
&gcirc;
Ğ
&Gbreve;
ğ
&gbreve;
Ġ
&Gdot;
ġ
&gdot;
Ģ
&Gcedil;
Ĥ
&Hcirc;
ĥ
&hcirc;
Ħ
&Hstrok;
ħ
&hstrok;
Ĩ
&Itilde;
ĩ
&itilde;
Ī
&Imacr;
ī
&imacr;
Į
&Iogon;
į
&iogon;
İ
&Idot;
ı
&imath; &inodot;
IJ
&IJlig;
ij
&ijlig;
Ĵ
&Jcirc;
ĵ
&jcirc;
Ķ
&Kcedil;
ķ
&kcedil;
ĸ
&kgreen;
Ĺ
&Lacute;
ĺ
&lacute;
Ļ
&Lcedil;
ļ
&lcedil;
Ľ
&Lcaron;
ľ
&lcaron;
Ŀ
&Lmidot;
ŀ
&lmidot;
Ł
&Lstrok;
ł
&lstrok;
Ń
&Nacute;
ń
&nacute;
Ņ
&Ncedil;
ņ
&ncedil;
Ň
&Ncaron;
ň
&ncaron;
ʼn
&napos;
Ŋ
&ENG;
ŋ
&eng;
Ō
&Omacr;
ō
&omacr;
Ő
&Odblac;
ő
&odblac;
Œ
&OElig;
œ
&oelig;
Ŕ
&Racute;
ŕ
&racute;
Ŗ
&Rcedil;
ŗ
&rcedil;
Ř
&Rcaron;
ř
&rcaron;
Ś
&Sacute;
ś
&sacute;
Ŝ
&Scirc;
ŝ
&scirc;
Ş
&Scedil;
ş
&scedil;
Š
&Scaron;
š
&scaron;
Ţ
&Tcedil;
ţ
&tcedil;
Ť
&Tcaron;
ť
&tcaron;
Ŧ
&Tstrok;
ŧ
&tstrok;
Ũ
&Utilde;
ũ
&utilde;
Ū
&Umacr;
ū
&umacr;
Ŭ
&Ubreve;
ŭ
&ubreve;
Ů
&Uring;
ů
&uring;
Ű
&Udblac;
ű
&udblac;
Ų
&Uogon;
ų
&uogon;
Ŵ
&Wcirc;
ŵ
&wcirc;
Ŷ
&Ycirc;
ŷ
&ycirc;
Ÿ
&Yuml;
Ź
&Zacute;
ź
&zacute;
Ż
&Zdot;
ż
&zdot;
Ž
&Zcaron;
ž
&zcaron;
ƒ
&fnof;
Ƶ
&imped;
ǵ
&gacute;
ȷ
&jmath;
ˆ
&circ;
ˇ
&caron; &Hacek;
˘
&breve; &Breve;
˙
&dot; &DiacriticalDot;
˚
&ring;
˛
&ogon;
˜
&tilde; &DiacriticalTilde;
˝
&dblac; &DiacriticalDoubleAcute;
̑
&DownBreve;
̲
&UnderBar;
Α
&Alpha;
Β
&Beta;
Γ
&Gamma;
Δ
&Delta;
Ε
&Epsilon;
Ζ
&Zeta;
Η
&Eta;
Θ
&Theta;
Ι
&Iota;
Κ
&Kappa;
Λ
&Lambda;
Μ
&Mu;
Ν
&Nu;
Ξ
&Xi;
Ο
&Omicron;
Π
&Pi;
Ρ
&Rho;
Σ
&Sigma;
Τ
&Tau;
Υ
&Upsilon;
Φ
&Phi;
Χ
&Chi;
Ψ
&Psi;
Ω
&Omega;
α
&alpha;
β
&beta;
γ
&gamma;
δ
&delta;
ε
&epsiv; &varepsilon; &epsilon;
ζ
&zeta;
η
&eta;
θ
&theta;
ι
&iota;
κ
&kappa;
λ
&lambda;
μ
&mu;
ν
&nu;
ξ
&xi;
ο
&omicron;
π
&pi;
ρ
&rho;
ς
&sigmav; &varsigma; &sigmaf;
σ
&sigma;
τ
&tau;
υ
&upsi; &upsilon;
φ
&phi; &phiv; &varphi;
χ
&chi;
ψ
&psi;
ω
&omega;
ϑ
&thetav; &vartheta; &thetasym;
ϒ
&Upsi; &upsih;
ϕ
&straightphi;
ϖ
&piv; &varpi;
Ϝ
&Gammad;
ϝ
&gammad; &digamma;
ϰ
&kappav; &varkappa;
ϱ
&rhov; &varrho;
ϵ
&epsi; &straightepsilon;
϶
&bepsi; &backepsilon;
Ё
&IOcy;
Ђ
&DJcy;
Ѓ
&GJcy;
Є
&Jukcy;
Ѕ
&DScy;
І
&Iukcy;
Ї
&YIcy;
Ј
&Jsercy;
Љ
&LJcy;
Њ
&NJcy;
Ћ
&TSHcy;
Ќ
&KJcy;
Ў
&Ubrcy;
Џ
&DZcy;
А
&Acy;
Б
&Bcy;
В
&Vcy;
Г
&Gcy;
Д
&Dcy;
Е
&IEcy;
Ж
&ZHcy;
З
&Zcy;
И
&Icy;
Й
&Jcy;
К
&Kcy;
Л
&Lcy;
М
&Mcy;
Н
&Ncy;
О
&Ocy;
П
&Pcy;
Р
&Rcy;
С
&Scy;
Т
&Tcy;
У
&Ucy;
Ф
&Fcy;
Х
&KHcy;
Ц
&TScy;
Ч
&CHcy;
Ш
&SHcy;
Щ
&SHCHcy;
Ъ
&HARDcy;
Ы
&Ycy;
Ь
&SOFTcy;
Э
&Ecy;
Ю
&YUcy;
Я
&YAcy;
а
&acy;
б
&bcy;
в
&vcy;
г
&gcy;
д
&dcy;
е
&iecy;
ж
&zhcy;
з
&zcy;
и
&icy;
й
&jcy;
к
&kcy;
л
&lcy;
м
&mcy;
н
&ncy;
о
&ocy;
п
&pcy;
р
&rcy;
с
&scy;
т
&tcy;
у
&ucy;
ф
&fcy;
х
&khcy;
ц
&tscy;
ч
&chcy;
ш
&shcy;
щ
&shchcy;
ъ
&hardcy;
ы
&ycy;
ь
&softcy;
э
&ecy;
ю
&yucy;
я
&yacy;
ё
&iocy;
ђ
&djcy;
ѓ
&gjcy;
є
&jukcy;
ѕ
&dscy;
і
&iukcy;
ї
&yicy;
ј
&jsercy;
љ
&ljcy;
њ
&njcy;
ћ
&tshcy;
ќ
&kjcy;
ў
&ubrcy;
џ
&dzcy;
 
&ensp;
 
&emsp;
 
&emsp13;
 
&emsp14;
 
&numsp;
 
&puncsp;
 
&thinsp; &ThinSpace;
 
&hairsp; &VeryThinSpace;
​
&ZeroWidthSpace; &NegativeVeryThinSpace; &NegativeThinSpace; &NegativeMediumSpace; &NegativeThickSpace;
‌
&zwnj;
‍
&zwj;
‎
&lrm;
‏
&rlm;
‐
&hyphen; &dash;
–
&ndash;
—
&mdash;
―
&horbar;
‖
&Verbar; &Vert;
‘
&lsquo; &OpenCurlyQuote;
’
&rsquo; &rsquor; &CloseCurlyQuote;
‚
&lsquor; &sbquo;
“
&ldquo; &OpenCurlyDoubleQuote;
”
&rdquo; &rdquor; &CloseCurlyDoubleQuote;
„
&ldquor; &bdquo;
†
&dagger;
‡
&Dagger; &ddagger;
•
&bull; &bullet;
‥
&nldr;
…
&hellip; &mldr;
‰
&permil;
‱
&pertenk;
′
&prime;
″
&Prime;
‴
&tprime;
‵
&bprime; &backprime;
‹
&lsaquo;
›
&rsaquo;
‾
&oline;
⁁
&caret;
⁃
&hybull;
⁄
&frasl;
⁏
&bsemi;
⁗
&qprime;
 
&MediumSpace;
⁠
&NoBreak;
⁡
&ApplyFunction; &af;
⁢
&InvisibleTimes; &it;
⁣
&InvisibleComma; &ic;
€
&euro;
⃛
&tdot; &TripleDot;
⃜
&DotDot;
ℂ
&Copf; &complexes;
℅
&incare;
ℊ
&gscr;
ℋ
&hamilt; &HilbertSpace; &Hscr;
ℌ
&Hfr; &Poincareplane;
ℍ
&quaternions; &Hopf;
ℎ
&planckh;
ℏ
&planck; &hbar; &plankv; &hslash;
ℐ
&Iscr; &imagline;
ℑ
&image; &Im; &imagpart; &Ifr;
ℒ
&Lscr; &lagran; &Laplacetrf;
ℓ
&ell;
ℕ
&Nopf; &naturals;
№
&numero;
℗
&copysr;
℘
&weierp; &wp;
ℙ
&Popf; &primes;
ℚ
&rationals; &Qopf;
ℛ
&Rscr; &realine;
ℜ
&real; &Re; &realpart; &Rfr;
ℝ
&reals; &Ropf;
℞
&rx;
™
&trade; &TRADE;
ℤ
&integers; &Zopf;
Ω
&ohm;
℧
&mho;
ℨ
&Zfr; &zeetrf;
℩
&iiota;
Å
&angst;
ℬ
&bernou; &Bernoullis; &Bscr;
ℭ
&Cfr; &Cayleys;
ℯ
&escr;
ℰ
&Escr; &expectation;
ℱ
&Fscr; &Fouriertrf;
ℳ
&phmmat; &Mellintrf; &Mscr;
ℴ
&order; &orderof; &oscr;
ℵ
&alefsym; &aleph;
ℶ
&beth;
ℷ
&gimel;
ℸ
&daleth;
ⅅ
&CapitalDifferentialD; &DD;
ⅆ
&DifferentialD; &dd;
ⅇ
&ExponentialE; &exponentiale; &ee;
ⅈ
&ImaginaryI; &ii;
⅓
&frac13;
⅔
&frac23;
⅕
&frac15;
⅖
&frac25;
⅗
&frac35;
⅘
&frac45;
⅙
&frac16;
⅚
&frac56;
⅛
&frac18;
⅜
&frac38;
⅝
&frac58;
⅞
&frac78;
←
&larr; &leftarrow; &LeftArrow; &slarr; &ShortLeftArrow;
↑
&uarr; &uparrow; &UpArrow; &ShortUpArrow;
→
&rarr; &rightarrow; &RightArrow; &srarr; &ShortRightArrow;
↓
&darr; &downarrow; &DownArrow; &ShortDownArrow;
↔
&harr; &leftrightarrow; &LeftRightArrow;
↕
&varr; &updownarrow; &UpDownArrow;
↖
&nwarr; &UpperLeftArrow; &nwarrow;
↗
&nearr; &UpperRightArrow; &nearrow;
↘
&searr; &searrow; &LowerRightArrow;
↙
&swarr; &swarrow; &LowerLeftArrow;
↚
&nlarr; &nleftarrow;
↛
&nrarr; &nrightarrow;
↝
&rarrw; &rightsquigarrow;
↞
&Larr; &twoheadleftarrow;
↟
&Uarr;
↠
&Rarr; &twoheadrightarrow;
↡
&Darr;
↢
&larrtl; &leftarrowtail;
↣
&rarrtl; &rightarrowtail;
↤
&LeftTeeArrow; &mapstoleft;
↥
&UpTeeArrow; &mapstoup;
↦
&map; &RightTeeArrow; &mapsto;
↧
&DownTeeArrow; &mapstodown;
↩
&larrhk; &hookleftarrow;
↪
&rarrhk; &hookrightarrow;
↫
&larrlp; &looparrowleft;
↬
&rarrlp; &looparrowright;
↭
&harrw; &leftrightsquigarrow;
↮
&nharr; &nleftrightarrow;
↰
&lsh; &Lsh;
↱
&rsh; &Rsh;
↲
&ldsh;
↳
&rdsh;
↵
&crarr;
↶
&cularr; &curvearrowleft;
↷
&curarr; &curvearrowright;
↺
&olarr; &circlearrowleft;
↻
&orarr; &circlearrowright;
↼
&lharu; &LeftVector; &leftharpoonup;
↽
&lhard; &leftharpoondown; &DownLeftVector;
↾
&uharr; &upharpoonright; &RightUpVector;
↿
&uharl; &upharpoonleft; &LeftUpVector;
⇀
&rharu; &RightVector; &rightharpoonup;
⇁
&rhard; &rightharpoondown; &DownRightVector;
⇂
&dharr; &RightDownVector; &downharpoonright;
⇃
&dharl; &LeftDownVector; &downharpoonleft;
⇄
&rlarr; &rightleftarrows; &RightArrowLeftArrow;
⇅
&udarr; &UpArrowDownArrow;
⇆
&lrarr; &leftrightarrows; &LeftArrowRightArrow;
⇇
&llarr; &leftleftarrows;
⇈
&uuarr; &upuparrows;
⇉
&rrarr; &rightrightarrows;
⇊
&ddarr; &downdownarrows;
⇋
&lrhar; &ReverseEquilibrium; &leftrightharpoons;
⇌
&rlhar; &rightleftharpoons; &Equilibrium;
⇍
&nlArr; &nLeftarrow;
⇎
&nhArr; &nLeftrightarrow;
⇏
&nrArr; &nRightarrow;
⇐
&lArr; &Leftarrow; &DoubleLeftArrow;
⇑
&uArr; &Uparrow; &DoubleUpArrow;
⇒
&rArr; &Rightarrow; &Implies; &DoubleRightArrow;
⇓
&dArr; &Downarrow; &DoubleDownArrow;
⇔
&hArr; &Leftrightarrow; &DoubleLeftRightArrow; &iff;
⇕
&vArr; &Updownarrow; &DoubleUpDownArrow;
⇖
&nwArr;
⇗
&neArr;
⇘
&seArr;
⇙
&swArr;
⇚
&lAarr; &Lleftarrow;
⇛
&rAarr; &Rrightarrow;
⇝
&zigrarr;
⇤
&larrb; &LeftArrowBar;
⇥
&rarrb; &RightArrowBar;
⇵
&duarr; &DownArrowUpArrow;
⇽
&loarr;
⇾
&roarr;
⇿
&hoarr;
∀
&forall; &ForAll;
∁
&comp; &complement;
∂
&part; &PartialD;
∃
&exist; &Exists;
∄
&nexist; &NotExists; &nexists;
∅
&empty; &emptyset; &emptyv; &varnothing;
∇
&nabla; &Del;
∈
&isin; &isinv; &Element; &in;
∉
&notin; &NotElement; &notinva;
∋
&niv; &ReverseElement; &ni; &SuchThat;
∌
&notni; &notniva; &NotReverseElement;
∏
&prod; &Product;
∐
&coprod; &Coproduct;
∑
&sum; &Sum;
−
&minus;
∓
&mnplus; &mp; &MinusPlus;
∔
&plusdo; &dotplus;
∖
&setmn; &setminus; &Backslash; &ssetmn; &smallsetminus;
∗
&lowast;
∘
&compfn; &SmallCircle;
√
&radic; &Sqrt;
∝
&prop; &propto; &Proportional; &vprop; &varpropto;
∞
&infin;
∟
&angrt;
∠
&ang; &angle;
∡
&angmsd; &measuredangle;
∢
&angsph;
∣
&mid; &VerticalBar; &smid; &shortmid;
∤
&nmid; &NotVerticalBar; &nsmid; &nshortmid;
∥
&par; &parallel; &DoubleVerticalBar; &spar; &shortparallel;
∦
&npar; &nparallel; &NotDoubleVerticalBar; &nspar; &nshortparallel;
∧
&and; &wedge;
∨
&or; &vee;
∩
&cap;
∪
&cup;
∫
&int; &Integral;
∬
&Int;
∭
&tint; &iiint;
∮
&conint; &oint; &ContourIntegral;
∯
&Conint; &DoubleContourIntegral;
∰
&Cconint;
∱
&cwint;
∲
&cwconint; &ClockwiseContourIntegral;
∳
&awconint; &CounterClockwiseContourIntegral;
∴
&there4; &therefore; &Therefore;
∵
&becaus; &because; &Because;
∶
&ratio;
∷
&Colon; &Proportion;
∸
&minusd; &dotminus;
∺
&mDDot;
∻
&homtht;
∼
&sim; &Tilde; &thksim; &thicksim;
∽
&bsim; &backsim;
∾
&ac; &mstpos;
∿
&acd;
≀
&wreath; &VerticalTilde; &wr;
≁
&nsim; &NotTilde;
≂
&esim; &EqualTilde; &eqsim;
≃
&sime; &TildeEqual; &simeq;
≄
&nsime; &nsimeq; &NotTildeEqual;
≅
&cong; &TildeFullEqual;
≆
&simne;
≇
&ncong; &NotTildeFullEqual;
≈
&asymp; &ap; &TildeTilde; &approx; &thkap; &thickapprox;
≉
&nap; &NotTildeTilde; &napprox;
≊
&ape; &approxeq;
≋
&apid;
≌
&bcong; &backcong;
≍
&asympeq; &CupCap;
≎
&bump; &HumpDownHump; &Bumpeq;
≏
&bumpe; &HumpEqual; &bumpeq;
≐
&esdot; &DotEqual; &doteq;
≑
&eDot; &doteqdot;
≒
&efDot; &fallingdotseq;
≓
&erDot; &risingdotseq;
≔
&colone; &coloneq; &Assign;
≕
&ecolon; &eqcolon;
≖
&ecir; &eqcirc;
≗
&cire; &circeq;
≙
&wedgeq;
≚
&veeeq;
≜
&trie; &triangleq;
≟
&equest; &questeq;
≠
&ne; &NotEqual;
≡
&equiv; &Congruent;
≢
&nequiv; &NotCongruent;
≤
&le; &leq;
≥
&ge; &GreaterEqual; &geq;
≦
&lE; &LessFullEqual; &leqq;
≧
&gE; &GreaterFullEqual; &geqq;
≨
&lnE; &lneqq;
≩
&gnE; &gneqq;
≪
&Lt; &NestedLessLess; &ll;
≫
&Gt; &NestedGreaterGreater; &gg;
≬
&twixt; &between;
≭
&NotCupCap;
≮
&nlt; &NotLess; &nless;
≯
&ngt; &NotGreater; &ngtr;
≰
&nle; &NotLessEqual; &nleq;
≱
&nge; &NotGreaterEqual; &ngeq;
≲
&lsim; &LessTilde; &lesssim;
≳
&gsim; &gtrsim; &GreaterTilde;
≴
&nlsim; &NotLessTilde;
≵
&ngsim; &NotGreaterTilde;
≶
&lg; &lessgtr; &LessGreater;
≷
&gl; &gtrless; &GreaterLess;
≸
&ntlg; &NotLessGreater;
≹
&ntgl; &NotGreaterLess;
≺
&pr; &Precedes; &prec;
≻
&sc; &Succeeds; &succ;
≼
&prcue; &PrecedesSlantEqual; &preccurlyeq;
≽
&sccue; &SucceedsSlantEqual; &succcurlyeq;
≾
&prsim; &precsim; &PrecedesTilde;
≿
&scsim; &succsim; &SucceedsTilde;
⊀
&npr; &nprec; &NotPrecedes;
⊁
&nsc; &nsucc; &NotSucceeds;
⊂
&sub; &subset;
⊃
&sup; &supset; &Superset;
⊄
&nsub;
⊅
&nsup;
⊆
&sube; &SubsetEqual; &subseteq;
⊇
&supe; &supseteq; &SupersetEqual;
⊈
&nsube; &nsubseteq; &NotSubsetEqual;
⊉
&nsupe; &nsupseteq; &NotSupersetEqual;
⊊
&subne; &subsetneq;
⊋
&supne; &supsetneq;
⊍
&cupdot;
⊎
&uplus; &UnionPlus;
⊏
&sqsub; &SquareSubset; &sqsubset;
⊐
&sqsup; &SquareSuperset; &sqsupset;
⊑
&sqsube; &SquareSubsetEqual; &sqsubseteq;
⊒
&sqsupe; &SquareSupersetEqual; &sqsupseteq;
⊓
&sqcap; &SquareIntersection;
⊔
&sqcup; &SquareUnion;
⊕
&oplus; &CirclePlus;
⊖
&ominus; &CircleMinus;
⊗
&otimes; &CircleTimes;
⊘
&osol;
⊙
&odot; &CircleDot;
⊚
&ocir; &circledcirc;
⊛
&oast; &circledast;
⊝
&odash; &circleddash;
⊞
&plusb; &boxplus;
⊟
&minusb; &boxminus;
⊠
&timesb; &boxtimes;
⊡
&sdotb; &dotsquare;
⊢
&vdash; &RightTee;
⊣
&dashv; &LeftTee;
⊤
&top; &DownTee;
⊥
&bottom; &bot; &perp; &UpTee;
⊧
&models;
⊨
&vDash; &DoubleRightTee;
⊩
&Vdash;
⊪
&Vvdash;
⊫
&VDash;
⊬
&nvdash;
⊭
&nvDash;
⊮
&nVdash;
⊯
&nVDash;
⊰
&prurel;
⊲
&vltri; &vartriangleleft; &LeftTriangle;
⊳
&vrtri; &vartriangleright; &RightTriangle;
⊴
&ltrie; &trianglelefteq; &LeftTriangleEqual;
⊵
&rtrie; &trianglerighteq; &RightTriangleEqual;
⊶
&origof;
⊷
&imof;
⊸
&mumap; &multimap;
⊹
&hercon;
⊺
&intcal; &intercal;
⊻
&veebar;
⊽
&barvee;
⊾
&angrtvb;
⊿
&lrtri;
⋀
&xwedge; &Wedge; &bigwedge;
⋁
&xvee; &Vee; &bigvee;
⋂
&xcap; &Intersection; &bigcap;
⋃
&xcup; &Union; &bigcup;
⋄
&diam; &diamond; &Diamond;
⋅
&sdot;
⋆
&sstarf; &Star;
⋇
&divonx; &divideontimes;
⋈
&bowtie;
⋉
&ltimes;
⋊
&rtimes;
⋋
&lthree; &leftthreetimes;
⋌
&rthree; &rightthreetimes;
⋍
&bsime; &backsimeq;
⋎
&cuvee; &curlyvee;
⋏
&cuwed; &curlywedge;
⋐
&Sub; &Subset;
⋑
&Sup; &Supset;
⋒
&Cap;
⋓
&Cup;
⋔
&fork; &pitchfork;
⋕
&epar;
⋖
&ltdot; &lessdot;
⋗
&gtdot; &gtrdot;
⋘
&Ll;
⋙
&Gg; &ggg;
⋚
&leg; &LessEqualGreater; &lesseqgtr;
⋛
&gel; &gtreqless; &GreaterEqualLess;
⋞
&cuepr; &curlyeqprec;
⋟
&cuesc; &curlyeqsucc;
⋠
&nprcue; &NotPrecedesSlantEqual;
⋡
&nsccue; &NotSucceedsSlantEqual;
⋢
&nsqsube; &NotSquareSubsetEqual;
⋣
&nsqsupe; &NotSquareSupersetEqual;
⋦
&lnsim;
⋧
&gnsim;
⋨
&prnsim; &precnsim;
⋩
&scnsim; &succnsim;
⋪
&nltri; &ntriangleleft; &NotLeftTriangle;
⋫
&nrtri; &ntriangleright; &NotRightTriangle;
⋬
&nltrie; &ntrianglelefteq; &NotLeftTriangleEqual;
⋭
&nrtrie; &ntrianglerighteq; &NotRightTriangleEqual;
⋮
&vellip;
⋯
&ctdot;
⋰
&utdot;
⋱
&dtdot;
⋲
&disin;
⋳
&isinsv;
⋴
&isins;
⋵
&isindot;
⋶
&notinvc;
⋷
&notinvb;
⋹
&isinE;
⋺
&nisd;
⋻
&xnis;
⋼
&nis;
⋽
&notnivc;
⋾
&notnivb;
⌅
&barwed; &barwedge;
⌆
&Barwed; &doublebarwedge;
⌈
&lceil; &LeftCeiling;
⌉
&rceil; &RightCeiling;
⌊
&lfloor; &LeftFloor;
⌋
&rfloor; &RightFloor;
⌌
&drcrop;
⌍
&dlcrop;
⌎
&urcrop;
⌏
&ulcrop;
⌐
&bnot;
⌒
&profline;
⌓
&profsurf;
⌕
&telrec;
⌖
&target;
⌜
&ulcorn; &ulcorner;
⌝
&urcorn; &urcorner;
⌞
&dlcorn; &llcorner;
⌟
&drcorn; &lrcorner;
⌢
&frown; &sfrown;
⌣
&smile; &ssmile;
⌭
&cylcty;
⌮
&profalar;
⌶
&topbot;
⌽
&ovbar;
⌿
&solbar;
⍼
&angzarr;
⎰
&lmoust; &lmoustache;
⎱
&rmoust; &rmoustache;
⎴
&tbrk; &OverBracket;
⎵
&bbrk; &UnderBracket;
⎶
&bbrktbrk;
⏜
&OverParenthesis;
⏝
&UnderParenthesis;
⏞
&OverBrace;
⏟
&UnderBrace;
⏢
&trpezium;
⏧
&elinters;
␣
&blank;
Ⓢ
&oS; &circledS;
─
&boxh; &HorizontalLine;
│
&boxv;
┌
&boxdr;
┐
&boxdl;
└
&boxur;
┘
&boxul;
├
&boxvr;
┤
&boxvl;
┬
&boxhd;
┴
&boxhu;
┼
&boxvh;
═
&boxH;
║
&boxV;
╒
&boxdR;
╓
&boxDr;
╔
&boxDR;
╕
&boxdL;
╖
&boxDl;
╗
&boxDL;
╘
&boxuR;
╙
&boxUr;
╚
&boxUR;
╛
&boxuL;
╜
&boxUl;
╝
&boxUL;
╞
&boxvR;
╟
&boxVr;
╠
&boxVR;
╡
&boxvL;
╢
&boxVl;
╣
&boxVL;
╤
&boxHd;
╥
&boxhD;
╦
&boxHD;
╧
&boxHu;
╨
&boxhU;
╩
&boxHU;
╪
&boxvH;
╫
&boxVh;
╬
&boxVH;
▀
&uhblk;
▄
&lhblk;
█
&block;
░
&blk14;
▒
&blk12;
▓
&blk34;
□
&squ; &square; &Square;
▪
&squf; &squarf; &blacksquare; &FilledVerySmallSquare;
▫
&EmptyVerySmallSquare;
▭
&rect;
▮
&marker;
▱
&fltns;
△
&xutri; &bigtriangleup;
▴
&utrif; &blacktriangle;
▵
&utri; &triangle;
▸
&rtrif; &blacktriangleright;
▹
&rtri; &triangleright;
▽
&xdtri; &bigtriangledown;
▾
&dtrif; &blacktriangledown;
▿
&dtri; &triangledown;
◂
&ltrif; &blacktriangleleft;
◃
&ltri; &triangleleft;
◊
&loz; &lozenge;
○
&cir;
◬
&tridot;
◯
&xcirc; &bigcirc;
◸
&ultri;
◹
&urtri;
◺
&lltri;
◻
&EmptySmallSquare;
◼
&FilledSmallSquare;
★
&starf; &bigstar;
☆
&star;
☎
&phone;
♀
&female;
♂
&male;
♠
&spades; &spadesuit;
♣
&clubs; &clubsuit;
♥
&hearts; &heartsuit;
♦
&diams; &diamondsuit;
♪
&sung;
♭
&flat;
♮
&natur; &natural;
♯
&sharp;
✓
&check; &checkmark;
✗
&cross;
✠
&malt; &maltese;
✶
&sext;
❘
&VerticalSeparator;
❲
&lbbrk;
❳
&rbbrk;
⟦
&lobrk; &LeftDoubleBracket;
⟧
&robrk; &RightDoubleBracket;
⟨
&lang; &LeftAngleBracket; &langle;
⟩
&rang; &RightAngleBracket; &rangle;
⟪
&Lang;
⟫
&Rang;
⟬
&loang;
⟭
&roang;
⟵
&xlarr; &longleftarrow; &LongLeftArrow;
⟶
&xrarr; &longrightarrow; &LongRightArrow;
⟷
&xharr; &longleftrightarrow; &LongLeftRightArrow;
⟸
&xlArr; &Longleftarrow; &DoubleLongLeftArrow;
⟹
&xrArr; &Longrightarrow; &DoubleLongRightArrow;
⟺
&xhArr; &Longleftrightarrow; &DoubleLongLeftRightArrow;
⟼
&xmap; &longmapsto;
⟿
&dzigrarr;
⤂
&nvlArr;
⤃
&nvrArr;
⤄
&nvHarr;
⤅
&Map;
⤌
&lbarr;
⤍
&rbarr; &bkarow;
⤎
&lBarr;
⤏
&rBarr; &dbkarow;
⤐
&RBarr; &drbkarow;
⤑
&DDotrahd;
⤒
&UpArrowBar;
⤓
&DownArrowBar;
⤖
&Rarrtl;
⤙
&latail;
⤚
&ratail;
⤛
&lAtail;
⤜
&rAtail;
⤝
&larrfs;
⤞
&rarrfs;
⤟
&larrbfs;
⤠
&rarrbfs;
⤣
&nwarhk;
⤤
&nearhk;
⤥
&searhk; &hksearow;
⤦
&swarhk; &hkswarow;
⤧
&nwnear;
⤨
&nesear; &toea;
⤩
&seswar; &tosa;
⤪
&swnwar;
⤳
&rarrc;
⤵
&cudarrr;
⤶
&ldca;
⤷
&rdca;
⤸
&cudarrl;
⤹
&larrpl;
⤼
&curarrm;
⤽
&cularrp;
⥅
&rarrpl;
⥈
&harrcir;
⥉
&Uarrocir;
⥊
&lurdshar;
⥋
&ldrushar;
⥎
&LeftRightVector;
⥏
&RightUpDownVector;
⥐
&DownLeftRightVector;
⥑
&LeftUpDownVector;
⥒
&LeftVectorBar;
⥓
&RightVectorBar;
⥔
&RightUpVectorBar;
⥕
&RightDownVectorBar;
⥖
&DownLeftVectorBar;
⥗
&DownRightVectorBar;
⥘
&LeftUpVectorBar;
⥙
&LeftDownVectorBar;
⥚
&LeftTeeVector;
⥛
&RightTeeVector;
⥜
&RightUpTeeVector;
⥝
&RightDownTeeVector;
⥞
&DownLeftTeeVector;
⥟
&DownRightTeeVector;
⥠
&LeftUpTeeVector;
⥡
&LeftDownTeeVector;
⥢
&lHar;
⥣
&uHar;
⥤
&rHar;
⥥
&dHar;
⥦
&luruhar;
⥧
&ldrdhar;
⥨
&ruluhar;
⥩
&rdldhar;
⥪
&lharul;
⥫
&llhard;
⥬
&rharul;
⥭
&lrhard;
⥮
&udhar; &UpEquilibrium;
⥯
&duhar; &ReverseUpEquilibrium;
⥰
&RoundImplies;
⥱
&erarr;
⥲
&simrarr;
⥳
&larrsim;
⥴
&rarrsim;
⥵
&rarrap;
⥶
&ltlarr;
⥸
&gtrarr;
⥹
&subrarr;
⥻
&suplarr;
⥼
&lfisht;
⥽
&rfisht;
⥾
&ufisht;
⥿
&dfisht;
⦅
&lopar;
⦆
&ropar;
⦋
&lbrke;
⦌
&rbrke;
⦍
&lbrkslu;
⦎
&rbrksld;
⦏
&lbrksld;
⦐
&rbrkslu;
⦑
&langd;
⦒

Nicht vollständig, pls verfolgen den Link für vollständig Dokument.

Anson Hwang
quelle