PHP html_entity_decode()-funktionen

Exempel

Konvertera fördefinierade HTML-entiteter "<" (mindre än) och ">" (större än) till tecken:

<?php
$str = "Detta är någon <b>fet</b> text.";
echo htmlspecialchars_decode($str);
?>

Ovanstående kods HTML-utdata är följande (granska källkoden):

<!DOCTYPE html>
<html>
<body>
Detta är någon <b>fet</b> text.
</body>
</html>

Ovanstående kods utdata i webbläsaren:

Detta är någon fet text.

Definition och användning

htmlspecialchars_decode()-funktionen konverterar fördefinierade HTML-entiteter till tecken.

HTML-entiteter som kommer att dekoderas är:

  • & Dekodas till & (och-tecken)
  • " Dekodas till " (dubbelcitatstecken)
  • ' Dekodas till ' (enkelcitatstecken)
  • < Dekodas till < (mindre än)
  • > Dekodas till > (större än)

htmlspecialchars_decode()-funktionen är den omvända funktionen till htmlspecialchars().

Syntax

htmlspecialchars_decode(string,flags)
Parameter Beskrivning
string Obligatoriskt. Ange den sträng som ska dekoderas.
flags

Valfritt. Ange hur citattecken ska hanteras samt vilken dokumenttyp som används.

Tillgängliga citatteckentyper:

  • ENT_COMPAT - Standard. Dekodera endast dubbelcitatstecken.
  • ENT_QUOTES - Dekodera både dubbel- och enkelcitatstecken.
  • ENT_NOQUOTES - Dekodera inte några citattecken.

Tilläggsmärken för den använda dokumenttypen:

  • ENT_HTML401 - Standard. Hantera koden som HTML 4.01.
  • ENT_HTML5 - Hantera koden som HTML 5.
  • ENT_XML1 - Hantera koden som XML 1.
  • ENT_XHTML - Hantera koden som XHTML.

Tekniska detaljer

Returvärde: Returnera den konverterade strängen.
PHP-version: 5.1.0+
Uppdateringslogg:

I PHP 5.4 lades nya flaggor till för att specificera användningsdokumenttypen:

  • ENT_HTML401
  • ENT_HTML5
  • ENT_XML1
  • ENT_XHTML

Mer exempel

Exempel 1

Konvertera fördefinierade HTML-entiteter till tecken:

<?php
$str = "Bill & 'Steve'";
echo htmlspecialchars_decode($str, ENT_COMPAT); // Konvertera endast dubbelcitat
echo "<br>";
echo htmlspecialchars_decode($str, ENT_QUOTES); // Konvertera dubbel- och enkelcitat
echo "<br>";
echo htmlspecialchars_decode($str, ENT_NOQUOTES); // Konvertera inte några citat
?>

Ovanstående kods HTML-utdata är följande (granska källkoden):

<!DOCTYPE html>
<html>
<body>
Bill & 'Steve'<br>
Bill & 'Steve'<br>
Bill & 'Steve'
</body>
</html>

Ovanstående kods utdata i webbläsaren:

Bill & 'Steve'
Bill & 'Steve'
Bill & 'Steve'

Exempel 2

Konvertera fördefinierade HTML-entiteter till dubbelcitat:

<?php
$str = 'I love "PHP".';
echo htmlspecialchars_decode($str, ENT_QUOTES); // Konvertera dubbel- och enkelcitat
?>

Ovanstående kods HTML-utdata är följande (granska källkoden):

<!DOCTYPE html>
<html>
<body>
Jag älskar "PHP".
</body>
</html>

Ovanstående kods utdata i webbläsaren:

Jag älskar "PHP".