htmlspecialchars_decode htmlentities escape characters php

php - escape - htmlentities() vs. htmlspecialchars()



php url encode (12)

¿Cuáles son las diferencias entre htmlspecialchars() y htmlentities() ? ¿Cuándo debo usar uno o el otro?



De la documentación de PHP para htmlentities :

Esta función es idéntica a htmlspecialchars() en todos los sentidos, excepto con htmlentities() , todos los caracteres que tienen equivalentes de entidad de caracteres HTML se traducen a estas entidades.

De la documentación de PHP para htmlspecialchars :

Ciertos caracteres tienen un significado especial en HTML, y deberían estar representados por entidades HTML para preservar sus significados. Esta función devuelve una cadena con algunas de estas conversiones realizadas; Las traducciones realizadas son las más útiles para la programación web cotidiana. Si necesita que todas las entidades de caracteres HTML estén traducidas, use htmlentities() lugar.

La diferencia es lo que se codifica. Las opciones son todo (entidades) o caracteres "especiales", como ampersand, comillas dobles y simples, menor que y mayor que (specialchars).

Prefiero usar htmlspecialchars siempre que sea posible.


Debería usar htmlspecialchars($strText, ENT_QUOTES) cuando solo quiere que su cadena sea segura para XML y HTML:

Por ejemplo, codificar

  • & a & amp;
  • "a & quot;
  • <a & lt;
  • > a & gt;
  • ''a & # 039;

Sin embargo, si también tiene caracteres adicionales que son Unicode o símbolos poco comunes en su texto, debe usar htmlentities () para asegurarse de que se muestren correctamente en su página HTML.

Notas:

  • ''solo será codificado por htmlspecialchars () a & # 039; si se pasa la opción ENT_QUOTES. & # 039; es más seguro de usar entonces & apos; ya que las versiones anteriores de Internet Explorer no son compatibles con & apos; entidad.
  • Técnicamente,> no necesita estar codificado según la especificación XML, pero generalmente también se codifica por coherencia con el requisito de <estar codificado.

Esto está siendo codificado con htmlentities .

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

"& <>
¡¢ £ ¤ ¥ ¦ § ¨ © ª «¬ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º» ¼ ½ ¾ ¿À Á Â Ä Å Æ Ç È É È Ë Ì Ì Í Î Ï Ð Ñ Ð Ñ Ñ Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß à á ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ø ù ü ý þ ÿ ÿ Œ Œ Œ ø ˜ ω ϑ ϒ ϖ ‌ ‍ - - '''' ‚“ ”„ † ‡ ‡ •… ‰ ′ ″ ‹› ‾ ⁄ ℘ ℜ ™ ℵ ← ↑ → ↓ ∀ ∀ ∀ ∋ ∗ √

Esto está siendo codificado con htmlspecialchars .

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

"& <>


Las diferencias entre htmlspecialchars () y htmlentities () son muy pequeñas. Veamos algunos ejemplos:

htmlspecialchars

htmlspecialchars (string $ string) toma múltiples argumentos donde el primer argumento es una cadena y todos los demás argumentos (ciertas banderas, ciertas codificaciones, etc.) son opcionales. htmlspecialchars convierte los caracteres especiales de la cadena a entidades HTML. Por ejemplo, si tiene <br> en su cadena, htmlspecialchars lo convertirá en & lt; b & gt; . Mientras que los caracteres como µ † etc. no tienen un significado especial en HTML Por lo tanto, no se convertirán a entidades HTML mediante la función htmlspecialchars como se muestra en el siguiente ejemplo.

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

htmlentities

htmlentities (string $ string) es muy similar a htmlspecialchars y toma múltiples argumentos donde el primer argumento es una cadena y todos los demás argumentos son opcionales (ciertas marcas, ciertas codificaciones, etc.). A diferencia de htmlspecialchars , htmlentities convierte no solo los caracteres especiales de la cadena a entidades HTML, sino todos los caracteres aplicables a entidades HTML.

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


Porque:

  • A veces, escribe datos XML y no puede usar entidades HTML en un archivo XML.
  • Debido a que htmlentities sustituye más caracteres que htmlspecialchars . Esto es innecesario, hace que el script PHP sea menos eficiente y el código HTML resultante sea menos legible.

htmlentities solo es necesario si sus páginas utilizan codificaciones como ASCII o LATIN-1 en lugar de UTF-8 y usted está manejando datos con una codificación diferente a la de la página.


Probablemente desee utilizar alguna codificación de caracteres Unicode, por ejemplo, UTF-8 y htmlspecialchars. Porque no hay ninguna necesidad de generar "entidades HTML" para "todos [los] caracteres aplicables" (eso es lo que hace htmlentities según la documentación) si ya está en su conjunto de caracteres.


Un pequeño ejemplo, necesitaba tener 2 nombres de clientes indexados en una función:

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

Originalmente $term = get_term_by(''name'', htmlentities($name), ''client''); que dio lugar a nombres de términos que solo incluían el elemento ampersand array (&) pero no el elemento acentuado. Pero cuando cambié la configuración de la variable a htmlspecialchars ambos pudieron ejecutar la función. ¡Espero que esto ayude!


htmlentities - Convierte todos los caracteres aplicables a entidades HTML.

htmlspecialchars - Convertir caracteres especiales a entidades HTML.

Las traducciones realizadas en caracteres de traducción a continuación:

  • ''&'' (ampersand) se convierte en ''& amp;''
  • ''"'' (comillas dobles) se convierte en ''& quot;'' cuando ENT_NOQUOTES no se establece.
  • "''" (comilla simple) se convierte en'' & # 039; '' (o '') solo cuando se establece ENT_QUOTES.
  • ''<'' (menos que) se convierte en ''& lt;''
  • ''>'' (mayor que) se convierte en ''& gt;''

Puede consultar el siguiente código para obtener más información sobre qué es htmlentities y htmlspecialchars:

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


htmlspecialchars () realiza la cantidad mínima de codificación para garantizar que su cadena no se analiza como HTML. Esto deja su cadena más legible para los humanos de lo que sería si usara htmlentities () para codificar absolutamente todo lo que tiene una codificación.


htmlspecialchars pueden ser utilizados:

  1. Cuando no hay necesidad de codificar todos los caracteres que tienen sus equivalentes de HTML.

    Si sabe que la codificación de la página coincide con los símbolos especiales de texto, ¿por qué usaría htmlentities ? htmlspecialchars es mucho más sencillo y produce menos código para enviar al cliente.

    Por ejemplo:

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

    El segundo es más corto y no causa ningún problema si se establece el conjunto de caracteres ISO-8859-1.

  2. Cuando los datos se procesarán no solo a través de un navegador (para evitar la decodificación de entidades HTML),

  3. Si la salida es XML (ver la respuesta de Artefacto ).


**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; ⦒

No completamente, por favor rastree el enlace para el documento completo.