Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * Removes unnecessary whitelines and breakspaces.
- * @param string $buffer HTML output
- * @return string Sanitized output
- * @author Marvin Thomas Rabe
- */
- function sanitize_output($buffer) {
- $ignored = array();
- $i = 0;
- preg_match_all("/<textarea[^>]*?>(.*?)<\/textarea>/s", $buffer, $expr);
- foreach ($expr[0] as $k => $v) {
- $ignored[$i] = $expr[0][$k];
- $buffer = str_replace($expr[0][$k], '<='.$i.'=>', $buffer);
- $i++;
- }
- preg_match_all("/<script[^>]*?>(.*?)<\/script>/s", $buffer, $expr);
- foreach ($expr[1] as $k => $v) {
- if(empty($expr[1][$k]))
- continue;
- $temp = preg_replace('/\s+\/{2,}.*\s+/', '', $expr[1][$k]);
- $temp = preg_replace('/\s+\/\*.*\*\/\s+/s', '', $temp);
- $buffer = str_replace($expr[1][$k], $temp, $buffer);
- }
- $buffer = preg_replace('/\n\r|\r\n|\n|\r|\t/', '', $buffer);
- $buffer = preg_replace('/ {2,}/', ' ', $buffer);
- foreach($ignored as $k => $v) {
- $buffer = preg_replace('/<='.$k.'=>/', $v, $buffer);
- }
- return $buffer;
- }
Add Comment
Please, Sign In to add comment