31 preg_match_all(
"!<script[^>]*?>.*?</script>!is", $source, $match);
32 $_script_blocks = $match[0];
33 $source = preg_replace(
"!<script[^>]*?>.*?</script>!is",
34 '@@@SMARTY:TRIM:SCRIPT@@@', $source);
37 preg_match_all(
"!<pre[^>]*?>.*?</pre>!is", $source, $match);
38 $_pre_blocks = $match[0];
39 $source = preg_replace(
"!<pre[^>]*?>.*?</pre>!is",
40 '@@@SMARTY:TRIM:PRE@@@', $source);
43 preg_match_all(
"!<textarea[^>]*?>.*?</textarea>!is", $source, $match);
44 $_textarea_blocks = $match[0];
45 $source = preg_replace(
"!<textarea[^>]*?>.*?</textarea>!is",
46 '@@@SMARTY:TRIM:TEXTAREA@@@', $source);
50 $source = trim(preg_replace(
'/((?<!\?>)\n)[\s]+/m',
'\1', $source));
65 $_len = strlen($search_str);
67 for ($_i=0, $_count=count($replace); $_i<$_count; $_i++)
68 if (($_pos=strpos($subject, $search_str, $_pos))!==
false)
69 $subject = substr_replace($subject, $replace[$_i], $_pos, $_len);