Если вам действительно нужно использовать simplehtmldom для извлечения этого:
Для
<style>
...
</style>
Использование:
$css = $html->find('style')->innertext;
Для
<div style="background:blue; color:white;"></div>
Использование:
$css = $html->find('div[style]')->style;
Если имеется более одного div
с атрибутом style
или более одного <style>
, вы можете использовать foreach
для циклического перехода между ними.
Для разбора стилей:
в PHP:
$s = 'background:blue; color:white;';
$results = [];
$styles = explode(';', $s);
foreach ($styles as $style) {
$properties = explode(':', $style);
if (2 === count($properties)) {
$results[trim($properties[0])] = trim($properties[1]);
}
}
var_dump($results);
в JS
let s = 'background:blue; color:white;';
let results = {};
let styles = s.split(";");
for (let style in styles) {
let properties = styles[style].split(":");
if (properties.length === 2) {
results[properties[0].trim()] = properties[1].trim();
}
}
console.log(results);
https://jsfiddle.net/zyfhtwj2/