Nameax
Новичок
Здравствуйте дорогие люди программисты и посетители конференции!
Помогите пожалуйста советом или правкой кода! Вот есть функция, которая минифицирует разметку:
Она работает, но к примеру p class=test - слипается почему-то! То есть нету пробелов, там, где они должны быть! Сказывают, что регулярные экспрессии не лучший способ для этого! Можете пожалуйста сделать правку или посоветовать минификатор с советами по установке!
Помогите пожалуйста советом или правкой кода! Вот есть функция, которая минифицирует разметку:
Код:
$search = array(
// Minify HTML
'/\>[^\S ]+/s', // strip whitespaces after tags, except space [^1]
'/[^\S ]+\</s', // strip whitespaces before tags, except space [^2]
'/<!--(.|\s)*?-->/', // Remove HTML comments [^3]
// Minify Javascript
'#\s*([!%&*\(\)\-=+\[\]\{|;:,.<>?\/])\s*#', // Remove white-space(s) around punctuation(s) [^4]
'#[;,]([\]\}])#', // Remove the last semi-colon and comma [^5]
'#\btrue\b#', '#false\b#', '#return\s+#', // Replace `true` with `!0` and `false` with `!1` [^6]
'/\}[^\S ]+/s', // strip whitespaces after tags }, except space [^7]
'/[^\S ]+\}/s' // strip whitespaces before tags }, except space [^8]
);
$replace = array(
'>', // [^1]
'<', // [^2]
'', // [^3]
'$1', // [^4]
'$1', // [^5]
'!0', '!1', 'return ', // [^6]
'}', // [^7]
'}' // [^8]
);
$buffer = preg_replace($search, $replace, $buffer);
return $buffer;
}
ob_start("sanitize_output");