Showing posts with label PHP htmlentities. Show all posts
Showing posts with label PHP htmlentities. Show all posts

Friday, 2 August 2019

How to solve error: ‘PHP Warning: DOMDocument::createElement(): unterminated entity reference’ when creating a new element using the DOMDocument object model

DOMDocument = Represents an entire HTML or XML document; serves as the root of the document tree.  (PHP 5)
DOMDocument::createElement()  Create new element node. (PHP 5)
Now to the solution!
Solution:
  • Use the htmlentitites function to convert all applicable characters to HTML entities.
  • $dom->createElement(‘value’, htmlentities($text_value));
    • htmlentitites Convert all applicable characters to HTML entities (PHP 4, PHP 5)

Friday, 26 September 2014

htmlentities in PHP

PHP htmlentities() function is utilized to change over all characters are converted to HTML entities.

Syntax:

htmlentities(string,quotestyle,character-set)
string : Required. Defines the input string.
quotestyle : Optional. Determine whether to convert single and double quotes .
The available quote styles are:
  • ENT_COMPAT - Default. Encodes only double quotes
  • ENT_QUOTES - Encodes double and single quotes
  • ENT_NOQUOTES - Does not encode any quotes
character-set : Optional. Refers the character set to be used.
Allowed values are:
  • ISO-8859-1 - Default. Western European
  • ISO-8859-15 - Western European (adds the Euro sign + French and Finnish letters missing in ISO-8859-1)
  • UTF-8 - ASCII compatible multi-byte 8-bit Unicode
  • cp866 - DOS-specific Cyrillic charset
  • cp1251 - Windows-specific Cyrillic charset
  • cp1252 - Windows specific charset for Western European
  • KOI8-R - Russian
  • BIG5 - Traditional Chinese, mainly used in Taiwan
  • GB2312 - Simplified Chinese, national standard character set
  • BIG5-HKSCS - Big5 with Hong Kong extensions
  • Shift_JIS - Japanese
  • EUC-JP - Japanese

 Example:

<?php 
$input_str = "Sam & 'Jack'";
echo htmlentities($input_str, ENT_COMPACT);
echo "<br />";
echo htmlentities($input_str, ENT_QOUTES);
echo "<br />";
echo htmlentities($input_str, ENT_NOQOUTES);
?>

Output will be:

Sam & 'Jack' 
Sam & 'Jack' 
Sam & 'Jack'
 
Viewsource for output in the browser:
<html>
<body>
Sam &amp; 'Jack'<br />
Sam &amp; &#039;Jack&#039;<br />
Sam &amp; 'Jack'
</body>
</html>