Carlos Carlos - 1 month ago 6
PHP Question

Remove comments from css file

I have to read a css file and remove its commentaries, so i've decided to use the

preg_replace
function from php:

$original = '
/*
foo
*/
.test, input[type="text"]{ color: blue; }

/* bar */
a:hover{
text-decoration: underline;
color: red;
background: #FFF;
}';

echo preg_replace('/\/\*.*\*\//s', '', $original);


the problem is that its losing the line
.test, input[type="text"]{ color: blue; }

Answer Source

Change .* to .*?.

echo preg_replace('#/\*.*?\*/#s', '', $original);

This will only remove /* up to the closest */ rather than the furthest.