Advertisement
Northys

Untitled

Jul 23rd, 2014
236
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 0.79 KB | None | 0 0
  1. <?php
  2.     use Symfony\Component\CssSelector\CssSelector,
  3.         Nette\Diagnostics\Debugger;
  4.    
  5.     // require Composer AutoLoader
  6.     require __DIR__ . '/vendor/autoload.php';
  7.     Debugger::enable();
  8.     Debugger::$maxDepth = 500;
  9.     Debugger::$maxLen = 100;
  10.    
  11.     $selector = CssSelector::toXPath('a#outlook');
  12.     $dom = new DOMDocument;
  13.     $dom->loadHTML(file_get_contents(__DIR__ . '/html'));
  14.     $finder = new DOMXPath($dom);
  15.    
  16.     $oCssParser = new Sabberworm\CSS\Parser(file_get_contents('style.css'));
  17.     $oCssDocument = $oCssParser->parse();
  18.     foreach ($oCssDocument->getAllRuleSets() as $ruleSet) {
  19.         $selector = $ruleSet->getSelector();
  20.         foreach ($finder->evaluate(CssSelector::toXPath($selector[0])) as $item) {
  21.             $item->setAttribute('style', implode(' ', $ruleSet->getRules()));
  22.         }
  23.     }
  24.    
  25.     echo $dom->saveHTML();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement