<?php
$root_dir = getcwd();
$image_directories = glob("{$root_dir}/*");
$file_name = "filename.html";
foreach ($image_directories as $image_directory) :
$data = file_get_contents("{$image_directory}/{$file_name}");
$formatted_string = preg_replace_callback("#(?<!<div class=\"col-md-4\">|<div class=\"col-md-4\">\n)<ul>\n?((?:<li>.+<\/li>\n?)+)<\/ul>#i", "transform_html", $data);
file_put_contents("{$image_directory}/{$file_name}", $formatted_string);
endforeach;
function transform_html($matches)
{
return preg_replace("#(<li>.+?<\/li>)#i", "<div class=\"col-md-4\">\n<ul>\n$1\n</ul>\n</div>\n", $matches[1]);
}