[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Замена в HTML и CSS названий классов и ID на crc32
Страницы: 1, 2
sx000
Есть страница условно с встроенным CSS и конечно же html код, все вместе.
Задача:
1. выгрести названия всех классов из CSS кастомных и заменить их скажем на crc32(
$_SERVER['HTTP_HOST'].$name_class) ну и соотвественно сделать тоже самое в html. Чтоб находился он правильно и работал в браузере.
2. Сделать тоже самое но с ID те с #
Ну я пошел сначала по такому пути:

$str = file_get_contents('index.html');
preg_match_all('/([\.|#][a-zA-Z0-9_-]{1,20}?) \{/is',$str,$matches);
$classes = $matches[1];
$host = $_SERVER['HTTP_HOST'];

foreach ($classes as $key_classes => $class){
$class_minus_1 = mb_substr( $class, 1);
$str = str_replace($class, crc32($class_minus_1.$host), $str);
$str = str_replace("class=".$class_minus_1,"class=".crc32($class_minus_1.$host), $str);
$str = str_replace("id=".$class_minus_1,"id=".crc32($class_minus_1.$host), $str);
}

echo $str;


Все как бы здорово, но не получается выпарсивать все полностью, и заменить грамотно. Например такие конструкции:
.progress-bar.progress-bar-success {
border-radius: 7px !important;
background-image: none !important;
}

Ставят его в тупик. Может есть какое то более гуманное решение ну там на подобие
PHP Simple HTML DOM Parser - там выводим допустим все названия классов и ID блоков, ну как то через тот же simple делаем замены?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.