PHP htmlspecialchars_decode()Functions

PHP String 参考手册PHP String Reference Manual

Example

Convert the predefined HTML entities "<" (less than) and ">" (greater than) to characters:

<?php $str = "This is some &lt;b&gt;bold&lt;/b&gt; text."; echo htmlspecialchars_decode($str); ?>

The HTML output of the above code is as follows (view source code):

<!DOCTYPE html> <html> <body> This is some <b>bold</b> text. </body> </html>

The browser output of the above code is as follows:

This is some bold text.


Definition and Usage

The htmlspecialchars_decode() function converts some predefined HTML entities to characters.

The HTML entities that will be decoded are:

  • &amp; decodes to & (ampersand)
  • &quot; decodes to " (double quote)
  • &apos; decodes to ' (single quote)
  • &lt; decodes to < (less than)
  • &gt; decodes to > (greater than)

The htmlspecialchars_decode() function ishtmlspecialchars()the inverse function of the htmlspecialchars() function.


Syntax

htmlspecialchars_decode(string,flags)

Parameter Description
string Required. Specifies the string to decode.
flags Optional. Specifies how to handle quotes and which document type to use.

Available quote types:

  • ENT_COMPAT - Default. Decodes only double quotes.
  • ENT_QUOTES - Decodes double and single quotes.
  • ENT_NOQUOTES - Does not decode any quotes.

Additional flags specifying the document type used:

  • ENT_HTML401 - Default. Process code as HTML 4.01.
  • ENT_HTML5 - Process code as HTML 5.
  • ENT_XML1 - Process code as XML 1.
  • ENT_XHTML - Process code as XHTML.

Technical Details

Return value: Returns the converted string.
PHP Version: 5.1.0+
Changelog: In PHP 5.4, additional flags for specifying the document type were added: ENT_HTML401, ENT_HTML5, ENT_XML1, and ENT_XHTML.


More Examples

Example 1

Convert some predefined HTML entities to characters:

<?php $str = "Jane &amp; 'Tarzan'"; echo htmlspecialchars_decode($str, ENT_COMPAT); //Default, only double quotes are decoded. echo "<br>"; echo htmlspecialchars_decode($str, ENT_QUOTES); //Decode double and single quotes. echo "<br>"; echo htmlspecialchars_decode($str, ENT_NOQUOTES); //Do not decode any quotes. ?>

The HTML output of the above code is as follows (view source code):

<!DOCTYPE html> <html> <body> Jane & 'Tarzan'<br> Jane & 'Tarzan'<br> Jane & 'Tarzan' </body> </html>

The browser output of the above code is as follows:

Jane & 'Tarzan'
Jane & 'Tarzan'
Jane & 'Tarzan'


Example 2

Convert predefined HTML entities to double quotes:

<?php $str = 'I love &quot;PHP&quot;.'; echo htmlspecialchars_decode($str, ENT_QUOTES); //Decode double and single quotes. ?>

The HTML output of the above code is as follows (view source code):

<!DOCTYPE html> <html> <body> I love "PHP". </body> </html>

The browser output of the above code is as follows:

I love "PHP".



PHP String 参考手册PHP String Reference Manual Other Extensions