note 83216 deleted from function.htmlspecialchars by cmb
| From: | cmb@php.net | Date: | Sun, 27 Oct 2019 09:14:59 +0000 |
| Subject: | note 83216 deleted from function.htmlspecialchars by cmb | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-212843@lists.php.net to get a copy of this message | ||
Note Submitter: brendel at krumedia dot de
----
I know some people posted similar functions but may be you are looking for this version:
function jschars($str)
{
$str = mb_ereg_replace("\\\\", "\\\\", $str);
$str = mb_ereg_replace("\"", "\\\"", $str);
$str = mb_ereg_replace("'", "\\'", $str);
$str = mb_ereg_replace("\r\n", "\\n", $str);
$str = mb_ereg_replace("\r", "\\n", $str);
$str = mb_ereg_replace("\n", "\\n", $str);
$str = mb_ereg_replace("\t", "\\t", $str);
$str = mb_ereg_replace("<", "\\x3C", $str); // for inclusion in HTML
$str = mb_ereg_replace(">", "\\x3E", $str);
return $str;
}
if you use smarty your code may look like:
<a onclick="alert('{$text|jschars|htmlchars}');return
false;">Test</a>
(Yes, we have the shortcur htmlchars instead of htmlspecialchars, so we are able to tell the
encoding e.g. UTF-8 or ISO-8859-1 to htmlspecialchars)