diff --git a/include/class.format.php b/include/class.format.php index 2c0993c459b108fdbd1bbf3394fb2e7f9ecdff95..9de1197edbb3d4272193f67af48826851f72296e 100644 --- a/include/class.format.php +++ b/include/class.format.php @@ -88,7 +88,12 @@ class Format { } function htmlchars($var) { - return is_array($var)?array_map(array('Format','htmlchars'),$var):htmlspecialchars($var,ENT_QUOTES); + $flags = ENT_COMPAT | ENT_QUOTES; + if (phpversion() >= '5.4.0') + $flags |= ENT_HTML401; + return is_array($var) + ? array_map(array('Format','htmlchars'),$var) + : htmlentities($var, $flags, 'UTF-8'); } function input($var) { @@ -114,7 +119,13 @@ class Format { } function striptags($var) { - return is_array($var)?array_map(array('Format','striptags'),$var):strip_tags(html_entity_decode($var)); //strip all tags ...no mercy! + $flags = ENT_COMPAT; + if (phpversion() >= '5.4.0') + $flags |= ENT_HTML401; + return is_array($var) + ? array_map(array('Format','striptags'),$var) + //strip all tags ...no mercy! + : strip_tags(html_entity_decode($var, $flags, 'UTF-8')); } //make urls clickable. Mainly for display