Новичок
Покинул форум
Сообщений всего: 16
Дата рег-ции: Апр. 2015
Помог: 0 раз(а)
|
Приветствую!
Задача такая: найти все классы (class) и индетификаторы (id) в css-Ффайле и проверить каждый, есть ли он в указанном html файле.
Если в html файле его нет, то корретно удалить из css-файла.
Написал следующий код:
PHP:
скопировать код в буфер обмена
function serachClass ($id_class) { GLOBAL $css; //Находим все классы $sclid = "/\\" . $id_class . "[\w_-]+(\,|\{|\s+|\:)/i"; $css_repl = array("}", "{", ":", ","); $rezult_css_go = array(); //Очищаем массив for($i = 0; $i < count($serach_class[0 ]); $i++) { } //Выделяем уникальные значения из массива //Делаем конечный массив foreach ($rezult_css as $key_val) { } //Проверка существования класса(ID) в html-файле for($i_serach = 0; $i_serach < count($rezult_css_go); $i_serach++) { if($id_class == ".") { if(preg_match("/class=\".*$rezult_css_go[$i_serach].*\"/", $serch)) { echo "Класс " . $rezult_css_go[$i_serach] . " найден в базе <br/>" ; } else { $bvcbvc = "/[^\}]*?\\" . $id_class . $rezult_css_go[$i_serach] . "[^}]+\}/is"; } } elseif($id_class == "#") { if(preg_match("/id=\".*$rezult_css_go[$i_serach].*\"/", $serch)) { echo "ID " . $rezult_css_go[$i_serach] . " найден в базе <br/>" ; } else { $bvcbvc = "/[^\}]*?\\" . $id_class . $rezult_css_go[$i_serach] . "[^}]+\}/is"; } } } } serachClass("."); serachClass("#");
Классы и ID определяются верно.
Проблема в регулярке, которая удаляет в css-файле не найденные в html-коде классы и ID. Т.е. вот в этой:
Почему-то удаляется часть элементов, которые были найдены в html-файле.
К сожалению, не смог отследить закономерность.
Не могу понять, в чем моя ошибка?
|