10 * escape_special_chars common function
12 * Function: smarty_function_escape_special_chars<br>
13 * Purpose: used by other smarty functions to escape
14 * special chars except for already escaped ones
18 function smarty_function_escape_special_chars($string)
20 if(!is_array($string)) {
21 $string = preg_replace('!&(#?\w+);!', '%%%SMARTY_START%%%\\1%%%SMARTY_END%%%', $string);
22 $string = htmlspecialchars($string);
23 $string = str_replace(array('%%%SMARTY_START%%%','%%%SMARTY_END%%%'), array('&',';'), $string);
28 /* vim: set expandtab: */