PHP htmlentities() Function
Example
Convert some characters to HTML entities:
 <?php
$str = '<a href="https://www.w3schools.com">Go to 
  w3schools.com</a>';
echo htmlentities($str);
 ?>
The HTML output of the code above will be (View Source):
  <a href="https://www.w3schools.com">Go to w3schools.com</a>
The browser output of the code above will be:
  <a href="https://www.w3schools.com">Go to w3schools.com</a>
 Try it Yourself »
Definition and Usage
The htmlentities() function converts characters to HTML entities.
Tip: To convert HTML entities back to characters, use the html_entity_decode() function.
Tip: Use the get_html_translation_table() function to return the translation table used by htmlentities().
Syntax
htmlentities(string,flags,character-set,double_encode)
Parameter Values
| Parameter | Description | 
|---|---|
| string | Required. Specifies the string to convert | 
| flags | Optional. Specifies how to handle quotes, invalid encoding and the used document type. The available quote styles are: 
 Invalid encoding: 
 Additional flags for specifying the used doctype: 
  | 
  
| character-set | Optional. A string that specifies which character-set to use. Allowed values are: 
 Note: Unrecognized character-sets will be ignored and replaced by ISO-8859-1 in versions prior to PHP 5.4. As of PHP 5.4, it will be ignored an replaced by UTF-8.  | 
  
| double_encode | Optional. A boolean value that specifies whether to encode existing html entities or not. 
  | 
  
Technical Details
| Return Value: | Returns the converted string. However, if the string parameter contains invalid encoding, it will return an empty string, unless either the ENT_IGNORE or ENT_SUBSTITUTE flags are set | 
|---|---|
| PHP Version: | 4+ | 
| Changelog: | PHP 5.6 - Changed the default value for the character-set 
  parameter to the value of the default charset (in configuration). PHP 5.4 - Changed the default value for the character-set parameter to UTF-8. PHP 5.4 - Added ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_HTML5, ENT_XML1 and ENT_XHTML PHP 5.3 - Added ENT_IGNORE constant. PHP 5.2.3 - Added the double_encode parameter. PHP 4.1 - Added the character-set parameter.  | 
More Examples
Example
Convert some characters to HTML entities:
  <?php
   $str = "Albert Einstein said: 'E=MC²'";
  echo htmlentities($str, ENT_COMPAT); // Will only convert double quotes
  echo "<br>";
  echo htmlentities($str, ENT_QUOTES); // Converts double and single  quotes
  echo "<br>";
  echo htmlentities($str, ENT_NOQUOTES); // Does not convert any quotes
  ?>
The HTML output of the code above will be (View Source):
  Albert Einstein said: 'E=MC²'<br>
Albert Einstein said: 
  'E=MC²'<br>
Albert Einstein said: 'E=MC²'
The browser output of the code above will be:
  Albert Einstein said: 'E=MC²'
Albert Einstein said: 'E=MC²'
Albert 
  Einstein said: 'E=MC²'
 Try it Yourself »
Example
Convert some characters to HTML entities using the Western European character-set:
  <?php
$str = "My name is Øyvind Åsane. I'm Norwegian.";
echo  htmlentities($str, ENT_QUOTES, "UTF-8"); // Will only convert  double quotes (not single quotes), and uses the character-set Western  European
?>
The HTML output of the code above will be (View Source):
 <!DOCTYPE html>
<html>
<body>
My name is Øyvind Åsane. I'm Norwegian.
</body>
</html>
The browser output of the code above will be:
My name is Øyvind Åsane. I'm Norwegian.
 Try it Yourself »
❮ PHP String Reference