Мне нужно получить имя класса CSS, атрибуты и значения, чтобы применить встроенный стиль CSS к DIV.
В настоящее время я могу получить информацию об имени класса CSS из строки, например:
$class = ".custom_class {
margin-top: 0px !important;
border-top-width: 0px !important;
border-right-width: 0px !important;
border-left-width: 0px !important;
padding-top: 250px !important;
padding-bottom: 250px !important;
background-image: url(http://localhost/wordpress/wp-content/uploads/2015/01/old-car.jpg?id=3663) !important;
border-left-color: #dd3333 !important;
border-right-color: #dd3333 !important;
border-top-color: #dd3333 !important;
}";
Как я могу получить или пересмотреть все атрибуты и значения CSS, чтобы включить их в div следующим образом:
<div class="custom_class" style="margin-top: 0px !important;border-top-width: 0px !important;border-right-width: 0px !important;border-left-width: 0px !important;padding-top: 250px !important;padding-bottom: 250px !important;background-image: url(http://localhost/wordpress/wp-content/uploads/2015/01/old-car.jpg?id=3663) !important;border-left-color: #dd3333 !important;border-right-color: #dd3333 !important;border-top-color: #dd3333 !important;"></div>
Я пытался с этим: preg_match("/{(.*?)}/", $class, $match);
Но это выводит в скобках. И что касается названия класса, я не знаю, как это сделать.
ты рядом со своим регулярным выражением preg_match("/{(.*?)}/", $class, $match);
просто уберите фигурные скобки и получите данные в $match[1]
:
preg_match("/^([\w.]+)\s*\{(.*?)\}/s", $class, $match);
$classname = $match[1];
$style = $match[2];
Других решений пока нет …