htmlspecialchars

(PHP 3, PHP 4 , PHP 5)

htmlspecialchars --  Konverter specielle tegn til HTML-entiteter

Beskrivelse

string htmlspecialchars ( string string [, int quote_style [, string charset]])

Nogle karakterer har speciel betydning i HTML, og skal præsenteres som HTML-entiteter hvis de skal bevare deres betydning. Denne funktion returnerer en streng med nogle af disse konverteringer; oversættelserne som bliver udført, er dem der bruges i hverdags webprogrammering. Hvis du kræver at alle HTML-karakterer skal oversættes, så brug htmlentities() i stedet

Denne funktion er brugbar til at forhindre brugertilføjet tekst i at indeholde HTML, såsom i fora og gæstebøger. Den frivillige anden parameter, quote_style, fortæller funktionen hvad den skal gøre med enkelte og dobbelte citationstegn. Standardindstillingen, ENT_COMPAT, er den bagud-kompatible indstilling som kun oversætter de dobbelte citationstegn og efterlader de enkelte. Hvis ENT_QUOTES er sat, bliver både enkelte og dobbelte citationstegn oversat og hvis ENT_NOQUOTES er sat, bliver hverken enkelte eller dobbelte citationstegn oversat.

Oversættelserne der bliver udført er:

Eksempel 1. htmlspecialchars() eksempel

<?php
$ny
= htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES);
echo
$ny; // &lt;a href=&#039;test&#039;&gt;Test&lt;/a&gt;
?>

Bemærk at denne funktion ikke oversætter andet end hvad der er vist ovenfor. For fuld entitets-oversættelse, se htmlentities(). Understøttelse for det valgfrie andet argument blev tilføjet i PHP 3.0.17 og PHP 4.0.3.

Det tredje argument charset definerer tegnsætkodningen som bruges i omdannelsen. Standard-kodningen er sat til ISO-8859-1. Understøttelse for tredje argument blev tilføjet i PHP 4.1.0.

Following character sets are supported in PHP 4.3.0 and later.

Tabel 1. Supported charsets

CharsetAliasesDescription
ISO-8859-1ISO8859-1 Western European, Latin-1
ISO-8859-15ISO8859-15 Western European, Latin-9. Adds the Euro sign, French and Finnish letters missing in Latin-1(ISO-8859-1).
UTF-8  ASCII compatible multi-byte 8-bit Unicode.
cp866ibm866, 866 DOS-specific Cyrillic charset. This charset is supported in 4.3.2.
cp1251Windows-1251, win-1251, 1251 Windows-specific Cyrillic charset. This charset is supported in 4.3.2.
cp1252Windows-1252, 1252 Windows specific charset for Western European.
KOI8-Rkoi8-ru, koi8r Russian. This charset is supported in 4.3.2.
BIG5950 Traditional Chinese, mainly used in Taiwan.
GB2312936 Simplified Chinese, national standard character set.
BIG5-HKSCS  Big5 with Hong Kong extensions, Traditional Chinese.
Shift_JISSJIS, 932 Japanese
EUC-JPEUCJP Japanese

Bemærk: Any other character sets are not recognized and ISO-8859-1 will be used instead.

Se også get_html_translation_table(), strip_tags(), htmlentities() og nl2br().