Sources for file plugins/smarty/shared.escape_special_chars.php in version 3.0 Beta 1
Click on a comment to hide it. Click here to show all comments.
/**
* Smarty shared plugin
* @package Smarty
* @subpackage plugins
*/
/**
* escape_special_chars common function
*
* Function: smarty_function_escape_special_chars<br>
* Purpose: used by other smarty functions to escape
* special chars except for already escaped ones
* @param string
* @return string
*/
function smarty_function_escape_special_chars($string)
{
if(!is_array($string)) {
$string = preg_replace('!&(#?\w+);!', '%%%SMARTY_START%%%\\1%%%SMARTY_END%%%',
$string);
$string = htmlspecialchars($string);
$string = str_replace(array('%%%SMARTY_START%%%','%%%SMARTY_END%%%'), array('&',';'),
$string);
}
return $string;
}
/* vim: set expandtab: */
?>
