mirror of
				https://github.com/smarty-php/smarty.git
				synced 2025-11-03 22:01:36 +01:00 
			
		
		
		
	
		
			
	
	
		
			32 lines
		
	
	
		
			780 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
		
		
			
		
	
	
			32 lines
		
	
	
		
			780 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
| 
								 | 
							
								<?php
							 | 
						||
| 
								 | 
							
								/**
							 | 
						||
| 
								 | 
							
								 * Smarty shared plugin
							 | 
						||
| 
								 | 
							
								 * @package Smarty
							 | 
						||
| 
								 | 
							
								 * @subpackage PluginsShared
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/**
							 | 
						||
| 
								 | 
							
								 * 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
							 | 
						||
| 
								 | 
							
								 * @author   Monte Ohrt <monte at ohrt dot com>
							 | 
						||
| 
								 | 
							
								 * @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: */
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								?>
							 |