Core Function HTMLSpecialChars
HTMLSpecialChars( <string>, <flags>, <encoding>, <double_encode> )
Contents |
Description
Convert special characters to HTML entities.
Parameters
string
The string being converted.
flags
A bitmask of one or more of the following flags, which specify how to handle quotes, invalid code unit sequences and the used document type.
The default is @ENT_COMPAT.
Available flags constants
Constant Name Description @ENT_COMPAT Will convert double-quotes and leave single-quotes alone. @ENT_QUOTES Will convert both double and single quotes. @ENT_NOQUOTES Will leave both double and single quotes unconverted. @ENT_IGNORE Silently discard invalid code unit sequences instead of returning an empty string. Using this flag is discouraged as it ยป may have security implications. @ENT_SUBSTITUTE Replace invalid code unit sequences with a Unicode Replacement Character U+FFFD (UTF-8) or &#FFFD; (otherwise) instead of returning an empty string. @ENT_DISALLOWED Replace invalid code points for the given document type with a Unicode Replacement Character U+FFFD (UTF-8) or &#FFFD; (otherwise) instead of leaving them as is. This may be useful, for instance, to ensure the well-formedness of XML documents with embedded external content. @ENT_HTML401 Handle code as HTML 4.01. @ENT_XML1 Handle code as XML 1. @ENT_XHTML Handle code as XHTML. @ENT_HTML5 Handle code as HTML 5.
encoding
Defines encoding used in conversion.
Currently this parameter is totally ignored and is provided only to be PHP friendly and reserved for future use.
I recommend setting this to "UTF-8" just to ensure futile compatibility
double_encode
When double_encode is turned off Sputnik will not encode existing html entities, the default is to convert everything.
Return Value
The converted string.
If the input string contains an invalid code unit sequence within the given encoding an empty string will be returned, unless either the @ENT_IGNORE or @ENT_SUBSTITUTE flags are set.
Remarks
None.
Example
$new = htmlspecialchars("<a href='test'>Test</a>", @ENT_QUOTES); echo "$new\n"; // <a href='test'>Test</a> $back = htmlspecialcharsdecode("$new", @ENT_QUOTES); echo "$back\n"; // <a href='test'>Test</a>"