I'm currently using this HTML DOM PARSER using php : http://simplehtmldom.sourceforge.net/
I'm confused on how to remove and replace the selected attribute href="style.css"
, I want to replace the link with "index/style.css"
, should I insert only the
index/
or replace the whole attribute from the whole html code?
This should do it:
$doc = str_get_html($code);
foreach ($doc->find('a[href]') as $a) {
$href = $a->href;
if (/* $href begins with a relative URL path */) {
$a->href = 'index/'.$href;
}
}
$code = (string) $doc;
You could also use PHP’s native DOM library:
$doc = new DOMDocument();
$doc->loadHTML($code);
$xpath = new DOMXpath($doc);
foreach ($xpath->query('//a[@href]') as $a) {
$href = $a->getAttribute('href');
if (/* $href begins with a relative URL path */) {
$a->setAttribute('href', 'index/'.$href);
}
}
$code = $doc->saveHTML();