Franky Chanyau
Franky Chanyau

Reputation: 1010

PHP DomDocument alter conditional comments

I have this html file with a conditional comment.

<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <link rel="stylesheet" type="text/css" href="css/style.css">
        <link rel="stylesheet" type="text/css" href="css/elements.css">
        <title>Page</title>
        <!--[if lte IE 6]>
        <link rel="stylesheet" type="text/css" href="css/ie6.css" />
        <![endif]-->
    </head>
etc...

I am using the DomDocument library to modify the <link> attributes. Is there any way of getting DomDocument to read and modify the <link> element in the conditional comments.

Upvotes: 4

Views: 1138

Answers (1)

MatTheCat
MatTheCat

Reputation: 18751

foreach($dom->getElementsByTagName('head') as $head) {
    foreach($head->childNodes as $node) {
        if($node instanceof DOMComment) {
            $node->replaceData(16,60,'test');
        }
    }
}

This code works, I just let you search how to get 'offset' and 'count' value for the replaceData method !

Upvotes: 3

Related Questions