Как убрать комментарии из файлов при помощи preg_replace
В некоторых случаях при необходимости открыть какой либо файл содержащий комментарии и найти в нем что то — возникает необходимость предварительно удалить комментарии. Это решается при помощи функции PHP: preg_replace
Удаляем комментарии в .conf файле apache
Как один из примеров — файлы конфигурации apache. По стандарту закоментированые строки начинаются с решетки — #
Пример ниже открывает файл и удаляет из него все строки с комментариями
$file = file_get_contents(MY_APACHE_PATH.'/conf/extra/httpd-vhosts.conf'); // open file $file = preg_replace('/#.*[\r][\n]/','',$file); // remove comments
Удаляем однострочные и многострочные комментарии в PHP файлах
Пример ниже показывает как очистить PHP файл от всех возможных комментариев
// открываем файл $file = file_get_contents('somefile.php'); // удаляем строки начинающиеся с # $file = preg_replace('/#.*/','',$file); // удаляем строки начинающиеся с // $file = preg_replace('#//.*#','',$file); // удаляем многострочные комментарии /* */ $file = preg_replace('#/\*(?:[^*]*(?:\*(?!/))*)*\*/#','',$file);
Очивидно что регулярные выражения крайне удобны