htmlentities () vs. htmlspecialchars ()

543

Jakie są różnice między htmlspecialchars()i htmlentities(). Kiedy powinienem użyć jednego lub drugiego?

Eric Hogue
źródło

Odpowiedzi:

343

Z dokumentacji PHP dla htmlentities :

Ta funkcja jest identyczna htmlspecialchars()pod każdym względem, z wyjątkiem htmlentities(), że wszystkie znaki, które mają odpowiedniki encji znaków HTML, są tłumaczone na te encje.

Z dokumentacji PHP dla htmlspecialchars :

Niektóre znaki mają szczególne znaczenie w HTML i powinny być reprezentowane przez jednostki HTML, jeśli mają zachować swoje znaczenie. Ta funkcja zwraca ciąg znaków z niektórymi z tych konwersji; wykonane tłumaczenia są najbardziej przydatne do codziennego programowania w Internecie. Jeśli chcesz przetłumaczyć wszystkie encje znaków HTML, użyj htmlentities()zamiast tego.

Różnica polega na tym, co zostanie zakodowane. Dostępne opcje to wszystko (byty) lub znaki specjalne, takie jak znak ampersand, podwójne i pojedyncze cudzysłowy, mniej niż i więcej niż (znaki specjalne).

Wolę używać, htmlspecialcharsgdy tylko jest to możliwe.

Na przykład:

    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
źródło
31
Dzięki za odpowiedź, ale czy mógłbyś opracować to, co wolisz, htmlspecialchars()gdy tylko jest to możliwe, oprócz oczywistych różnic? Jakie sytuacje htmlentities()spowodują problemy, a htmlspecialchars()nie?
MikeSchinkel
17
Właśnie napotkałem problem związany z używaniem htmlentities zamiast htmlspecialchars! Jeśli twoja strona jest kodowana w UTF8, specjalne symbole, takie jak ¡™ £ ¢ ∞§¶, zamieniają się w małe czarne diamenty ze znakami zapytania, ponieważ htmlentities nie wie, jak sobie z nimi poradzić, ale htmlspecialchars to robi.
Dariusz
32
@Darius To, co mówisz, nie ma sensu. htmlentitiesi htmlspecialcharsmoże obsługiwać UTF-8, o ile podasz "UTF-8"trzeci argument.
Artefacto
14
Począwszy od PHP 5.4, UTF-8 jest domyślną opcją kodowania (trzeci argument).
Jonathan
7
@Darius: Wpadliśmy na coś podobnego. Podobnie jak my, prawdopodobnie używasz PHP starszego niż 5.4.0. Wnioskując z komentarza Jonathana, musimy wyraźnie określić UTF-8 w następujący sposób: htmlentities ($ str, ENT_QUOTES, 'UTF-8');
rinogo,
378

htmlspecialchars może być użyty:

  1. Gdy nie ma potrzeby kodowania wszystkich znaków, które mają swoje odpowiedniki HTML.

    Jeśli wiesz, że kodowanie strony pasuje do specjalnych symboli tekstowych, dlaczego miałbyś używać htmlentities? htmlspecialcharsjest znacznie prostsza i produkuje mniej kodu do wysłania do klienta.

    Na przykład:

    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;.
    //                ^                 ^

    Drugi jest krótszy i nie powoduje żadnych problemów, jeśli ustawiony jest zestaw znaków ISO-8859-1.

  2. Gdy dane będą przetwarzane nie tylko przez przeglądarkę (aby uniknąć dekodowania encji HTML),

  3. Jeśli dane wyjściowe to XML (patrz odpowiedź Artefacto ).

Arseni Mourzenko
źródło
4
htmlspecialchars ($ str, ENT_QUOTES, „UTF-8”) jest najlepszy, jeśli używasz wersji PHP wcześniejszej niż 5.4. ENT_QUOTES to kodowanie pojedynczych cudzysłowów.
Tarik,
97

To jest kodowane htmlentities.

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

„& <>
¡¢ £ ¤ ¥ ¦ § ¨ © ª «¬ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º» ¼ ½ ¾ À Á Â × Õ Ö × Ø ′ Ú Ú Ü Ý Þ ß â ã ä å æ ç è é ê ê ë í í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý ý ý ÿ Œ œ Š š Ÿ ƒ ˆ ˜ Α Β Γ Δ Ε Ζ Η Θ Ι Κ Κ Μ Π Π Π Σ Τ Τ Υ Φ Χ Ψ Ω α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ ς σ τ υ φ χ χ ω ϑ ϒ ϖ ‌ ‍ - - '' ‚„ ”„ † ‡ •… ‰ ′ ″ ‹› ‾ ⁄ € ℑ ℘ ℜ ™ ℵ ← ↑ → ↓ ↔ ↵ ⇐ ⇑ ⇒ ⇓ ⇔ ∀ ∂ ∃ ∅ ∇ ∈ ∉ ∋ ∏ ∑ - ∗ √ ∝ ∞ ∠ ∧ ∨∩ ∪ ∫ ∴ ∼ ≅ ≈ ≠ ≡ ≤ ≥ ⊂ ⊃ ⊄ ⊆ ⊇ ⊕ ⊗ ⊥ ⋅ ⌈ ⌉ ⌊ ⌋ ⟨⟩ ◊ ♠ ♣ ♥ ♥ ♦

To jest kodowane htmlspecialchars.

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

„& <>

Berky
źródło
3
Strzec się! Na pierwszy rzut oka htmlentities wygląda całkiem kompletnie. Ale brakuje mu kilku naprawdę podstawowych i pospolitych postaci (szczególnie jeśli Twoi klienci lubią stwardnienie rozsiane). Inteligentne cytaty (np. „Lub rsquo;)”, myślniki (np. - lub „mdash”), znak towarowy (™ lub & trade;) i wiele innych spowoduje, że zwróci wartość zerową.
Jonathan Lidbeck
9
@Jonathan są na liście. Jeśli otrzymujesz pusty wynik, prawdopodobnie nieprawidłowo podałeś kodowanie.
Artefacto
4
Lub nie określiłeś kodowania i polegałeś na ustawieniach domyślnych, które zmieniły się w PHP 5.4, a następnie (prawdopodobnie) ponownie w PHP 5.6, w zależności od konfiguracji. Do 2012 r. Dokumentacja nawet nie zalecała określenia parametru. Tak więc, jeśli nie określiłeś opcjonalnego trzeciego parametru i zaktualizowałeś PHP, htmlentities najpierw użyło ISO-8859-1, potem użyło UTF-8, a następnie użyło wszystkiego, co jest w twoim php.ini, nie zgłaszając błędu w żadnych kwestiach, ale po cichu nic nie zwraca. Oczywiście w żadnym momencie nie może to prowadzić do utraty danych!
Aaa,
96

Ponieważ:

  • Czasami piszesz dane XML i nie możesz używać encji HTML w pliku XML.
  • Ponieważ htmlentitieszastępuje więcej znaków niż htmlspecialchars. Jest to niepotrzebne, powoduje, że skrypt PHP jest mniej wydajny, a wynikowy kod HTML mniej czytelny.

htmlentities jest konieczne tylko wtedy, gdy strony używają kodowania takiego jak ASCII lub LATIN-1 zamiast UTF-8 i jeśli dane są przetwarzane z kodowaniem innym niż strona.

Artefakt
źródło
19

Powinieneś użyć, htmlspecialchars($strText, ENT_QUOTES)gdy chcesz, aby Twój ciąg był bezpieczny w formacie XML i HTML:

Na przykład koduj

  • i do & amp;
  • „do”
  • <do <
  • > do & gt;
  • „do & # 039;

Jeśli jednak masz w tekście dodatkowe znaki, które są Unicode lub nietypowe symbole, powinieneś użyć htmlentities (), aby upewnić się, że poprawnie wyświetlają się na twojej stronie HTML.

Uwagi:

  • ”będzie kodowany tylko przez htmlspecialchars () do & # 039; jeśli zostanie przekazana opcja ENT_QUOTES. & # 039; jest wówczas bezpieczniejszy w użyciu & apos; ponieważ starsze wersje Internet Explorera nie obsługują & apos; jednostka.
  • Technicznie,> nie musi być kodowany zgodnie ze specyfikacją XML, ale zwykle jest również kodowany dla zachowania spójności z wymogiem <kodowania.
Kmeixner
źródło
2
pytanie brzmi: ponieważ mój tekst jest dostarczany przez użytkownika, nie wiem, czy mam w nim znaki Unicode lub nietypowe. dlaczego w takim przypadku powinienem używać htmlspecialchars?
EKanadily,
14

htmlspecialchars ()wykonuje minimalną ilość kodowania, aby upewnić się, że łańcuch nie jest analizowany jako HTML. To sprawia, że ​​Twój ciąg jest bardziej czytelny dla człowieka, niż gdybyś htmlentities ()kodował absolutnie wszystko, co ma kodowanie.

Grossvogel
źródło
14

Właśnie dowiedziałem się o get_html_translation_tablefunkcji. Zdajesz go HTML_ENTITIESlub HTML_SPECIALCHARSzwraca tablicę ze znakami, które zostaną zakodowane i sposób ich zakodowania.

Eric Hogue
źródło
4
Jest to przydatne, gdy chcesz stworzyć własną funkcję, na przykład zastąpić dodatkowe postacie lub zrobić inne magiczne rzeczy.
Jochem Kuijpers
9

htmlentities - Konwertuj wszystkie odpowiednie znaki na encje HTML.

htmlspecialchars - Konwertuj znaki specjalne na jednostki HTML.

W tłumaczeniach wykonano tłumaczenia znaków poniżej:

  • „&” (ampersand) staje się „& amp;”
  • „” (podwójny cudzysłów) staje się „& quot;” gdy ENT_NOQUOTES nie jest ustawiony.
  • „” „(pojedynczy cytat) staje się„ & # 039; ” (lub „) tylko, gdy jest ustawiony ENT_QUOTES.
  • „<” (mniej niż) staje się „& lt;”
  • „>” (większe niż) staje się „& gt;”

Możesz sprawdzić następujący kod, aby uzyskać więcej informacji na temat htmlentities i htmlspecialchars:

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

Joko Wandiro
źródło
7

Prawdopodobnie chcesz użyć kodowania znaków Unicode, na przykład UTF-8 i htmlspecialchars. Ponieważ nie ma jakikolwiek potrzeba generowania „podmioty html” dla wszystkich „[w] obowiązujących znaków” (czyli co htmlentities robi zgodnie z dokumentacją) jeśli jest już w zestawie znaków.

Cic
źródło
3

Jeden mały przykład, musiałem mieć indeksowane 2 nazwy klientów w funkcji:

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

Pierwotnie, $term = get_term_by('name', htmlentities($name), 'client');co zaowocowało nazwami terminów, które zawierały tylko element tablicy ampersand (&), ale nie element akcentowany. Ale kiedy zmieniłem ustawienie zmiennej, htmlspecialcharsoba były w stanie uruchomić tę funkcję. Mam nadzieję że to pomoże!

learn2reid
źródło
3

Różnice między htmlspecialchars () i htmlentities () są bardzo małe. Zobaczmy kilka przykładów:

htmlspecialchars

htmlspecialchars (ciąg $ ciąg) przyjmuje wiele argumentów, gdzie jako pierwszy argument jest ciągiem, a wszystkie inne argumenty (niektóre flagi, niektóre kodowania itp.) są opcjonalne. htmlspecialchars konwertuje znaki specjalne w ciągu znaków na encje HTML. Na przykład, jeśli masz <br> w swoim ciągu, htmlspecialchars przekonwertuje go na & lt; b & gt; . Podczas gdy znaki takie jak µ † itp. Nie mają specjalnego znaczenia w HTML. Nie będą więc konwertowane na jednostki HTML za pomocą funkcji htmlspecialchars, jak pokazano w poniższym przykładzie.

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

htmlentities

htmlentities (string $ string) jest bardzo podobny do htmlspecialchars i przyjmuje wiele argumentów, gdzie jako pierwszy argument jest ciągiem, a wszystkie inne argumenty są opcjonalne (niektóre flagi, niektóre kodowania itp.). W przeciwieństwie htmlspecialchars , htmlentities konwertyci nie tylko znaki specjalne struny do podmiotów HTML, ale wszystkie stosowane postacie do podmiotów HTML.

echo htmlentities('An example <br>'); // This will print - An example &lt; br &gt;
echo htmlentities('µ †');             // This will print -  &micro; &dagger; 
N Randhawa
źródło
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;
⦒

Nie w pełni, proszę śledzić link do pełnego dokumentu.

Anson Hwang
źródło