<?php
//DEBUG START - Remove on production mode
//DEBUG END
$html = <<< EOF
<p>This is real content and has no dummy words.</p>
<p>This has words like lorem and ipsum. It should be highlighted.</p>
EOF;
$dom = new DOMDocument(); //create new DOMDocument
$dom->loadHTML($html); // load the $html in the new DOMDocument
$xpath = new DOMXPath($dom); // create a new DOMXPath
// loop all <p> tags on the html
foreach($xpath->query("//p") as $paragraph ){ //
//if paragraph text contains lorem ipsum
if(preg_match('/lorem|ipsum/im', $paragraph->textContent)){ //add attribute style="color:red"
$paragraph->setAttribute("style", "color:red");
}
}
//save the new html with the modifications above
$html = preg_replace('/^<!DOCTYPE.+?>/', '', str_replace( array('<html>', '</html>', '<body>', '</body>'), array('', '', '', ''), $dom->saveHTML()));
echo $html;
PD9waHAKLy9ERUJVRyBTVEFSVCAtIFJlbW92ZSBvbiBwcm9kdWN0aW9uIG1vZGUKZXJyb3JfcmVwb3J0aW5nKEVfQUxMKTsKaW5pX3NldCgnZGlzcGxheV9lcnJvcnMnLCAnMScpOwovL0RFQlVHIEVORAokaHRtbCA9IDw8PCBFT0YKPHA+VGhpcyBpcyByZWFsIGNvbnRlbnQgYW5kIGhhcyBubyBkdW1teSB3b3Jkcy48L3A+CjxwPlRoaXMgaGFzIHdvcmRzIGxpa2UgbG9yZW0gYW5kIGlwc3VtLiBJdCBzaG91bGQgYmUgaGlnaGxpZ2h0ZWQuPC9wPgpFT0Y7CgokZG9tID0gbmV3IERPTURvY3VtZW50KCk7IC8vY3JlYXRlIG5ldyBET01Eb2N1bWVudAokZG9tLT5sb2FkSFRNTCgkaHRtbCk7IC8vIGxvYWQgdGhlICRodG1sIGluIHRoZSBuZXcgRE9NRG9jdW1lbnQKJHhwYXRoID0gbmV3IERPTVhQYXRoKCRkb20pOyAvLyBjcmVhdGUgYSBuZXcgRE9NWFBhdGgKLy8gbG9vcCBhbGwgPHA+IHRhZ3Mgb24gdGhlIGh0bWwKZm9yZWFjaCgkeHBhdGgtPnF1ZXJ5KCIvL3AiKSBhcyAkcGFyYWdyYXBoICl7IC8vCiAgICAgICAgLy9pZiBwYXJhZ3JhcGggdGV4dCBjb250YWlucyBsb3JlbSBpcHN1bQogICAgICAgIGlmKHByZWdfbWF0Y2goJy9sb3JlbXxpcHN1bS9pbScsICRwYXJhZ3JhcGgtPnRleHRDb250ZW50KSl7CiAgICAgICAgLy9hZGQgYXR0cmlidXRlIHN0eWxlPSJjb2xvcjpyZWQiCiAgICAgICAgJHBhcmFncmFwaC0+c2V0QXR0cmlidXRlKCJzdHlsZSIsICJjb2xvcjpyZWQiKTsKICAgICAgICB9Cn0KLy9zYXZlIHRoZSBuZXcgaHRtbCB3aXRoIHRoZSBtb2RpZmljYXRpb25zIGFib3ZlCiRodG1sID0gcHJlZ19yZXBsYWNlKCcvXjwhRE9DVFlQRS4rPz4vJywgJycsIHN0cl9yZXBsYWNlKCBhcnJheSgnPGh0bWw+JywgJzwvaHRtbD4nLCAnPGJvZHk+JywgJzwvYm9keT4nKSwgYXJyYXkoJycsICcnLCAnJywgJycpLCAkZG9tLT5zYXZlSFRNTCgpKSk7CmVjaG8gJGh0bWw7