1: | <?php
|
2: | |
3: | |
4: | |
5: | |
6: | |
7: |
|
8: | |
9: | |
10: | |
11: | |
12: | |
13: | |
14: | |
15: | |
16: | |
17: | |
18: | |
19: |
|
20: | function smarty_function_escape_special_chars($string)
|
21: | {
|
22: | if (!is_array($string)) {
|
23: | if (version_compare(PHP_VERSION, '5.2.3', '>=')) {
|
24: | $string = htmlspecialchars($string, ENT_COMPAT, Smarty::$_CHARSET, false);
|
25: | } else {
|
26: | $string = preg_replace('!&(#?\w+);!', '%%%SMARTY_START%%%\\1%%%SMARTY_END%%%', $string);
|
27: | $string = htmlspecialchars($string);
|
28: | $string = str_replace(array('%%%SMARTY_START%%%', '%%%SMARTY_END%%%'), array('&', ';'), $string);
|
29: | }
|
30: | }
|
31: | return $string;
|
32: | }
|
33: | |