| // | Aidan Lister | // +----------------------------------------------------------------------+ // // $Id$ if (!defined('ENT_NOQUOTES')) { define('ENT_NOQUOTES', 0); } if (!defined('ENT_COMPAT')) { define('ENT_COMPAT', 2); } if (!defined('ENT_QUOTES')) { define('ENT_QUOTES', 3); } /** * Replace html_entity_decode() * * @category PHP * @package PHP_Compat * @link http://php.net/function.html_entity_decode * @author David Irvine * @author Aidan Lister * @version $Revision: 1.8 $ * @since PHP 4.3.0 * @internal Setting the charset will not do anything * @require PHP 4.0.0 (user_error) */ if (!function_exists('html_entity_decode')) { function html_entity_decode($string, $quote_style = ENT_COMPAT, $charset = null) { if (!is_int($quote_style)) { user_error('html_entity_decode() expects parameter 2 to be long, ' . gettype($quote_style) . ' given', E_USER_WARNING); return; } $trans_tbl = get_html_translation_table(HTML_ENTITIES); $trans_tbl = array_flip($trans_tbl); // Add single quote to translation table; $trans_tbl['''] = '\''; // Not translating double quotes if ($quote_style & ENT_NOQUOTES) { // Remove double quote from translation table unset($trans_tbl['"']); } return strtr($string, $trans_tbl); } } ?>