htmlspecialchars
(PHP 4, PHP 5)
htmlspecialchars — Konverter specielle tegn til HTML-entiteter
Beskrivelse
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:
- '&' (ampersand) bliver '&'
- '"' (dobbelt citationstegn) bliver '"' når ENT_NOQUOTES ikke er sat.
- ''' (enkelt citationstegn) bliver ''' når ENT_QUOTES er sat.
- '<' (mindre end) bliver '<'
- '>' (større end) bliver '>'
Example#1 htmlspecialchars() eksempel
<?php
$ny = htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES);
echo $ny; // <a href='test'>Test</a>
?>
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.
Følgende tegnkodninger er understøttet i PHP 4.3.0 og senere.
Tegnkodning | Aliaser | Beskrivelse |
---|---|---|
ISO-8859-1 | ISO8859-1 | Vesteuropæisk, Latin-1 |
ISO-8859-15 | ISO8859-15 | Vesteuropæisk, Latin-9. Tilfølger euro-tegnet, franske og finske tegn som mangler i Latin-1 (ISO-8859-1) |
UTF-8 | ASCII-kompatibelt flerbit 8-bit UCS | |
cp866 | ibm866, 866 | DOS-specifik kyrillisk tegnkodning. Denne tegnkodning er understøttet i 4.3.2 |
cp1251 | Windows-1251, win-1251, 1251 | Windows-specifik kyrillisk tegnkodning. Denne tegnkodning er understøttet i 4.3.2. |
cp1252 | Windows-1252, 1252 | Windows-specifik tegnkodning for vesteuropæisk. |
KOI8-R | koi8-ru, koi8r | Russisk. Denne tegnkodning er understøttet i 4.3.2. |
BIG5 | 950 | Traditionelt kinesisk, hovedsageligt brugt i Taiwan. |
GB2312 | 936 | Simplificeret kinesisk, nation standard tegnkodning. |
BIG5-HKSCS | Big5 med Hong Kong-tilføjelser, traditionelt kinesisk. | |
Shift_JIS | SJIS, 932 | Japansk |
EUC-JP | EUCJP | Japansk |
Note: Ingen andre tegnkodninger bliver genkendt, og ISO-8859-1 vil blive brugt i stedet.
Se også get_html_translation_table(), strip_tags(), htmlentities() og nl2br().