Tuesday, 23 January 2018

DomXML Example

This short example shows how to use the DomXML extension.

To try this example you need to have the DomXML extension enabled.

// example HTML code: (could also come from an URL)
$html = '<html>
<head>
<title>links</title>
</head>
<body>
<a href="link1.htm" title="Link title 1" target="_blank">Link #1</a><br/>
<a href="link2.htm" title="Link title 2" target="_blank">Link #2</a><br/>
<a href="link3.htm" title="Link title 3" target="_blank">Link #3</a><br/>
</body>
</html>';

// check if DomXML is available:
if (!function_exists('DomDocument')){
    die('DomXML extension is not available :-(');
}

print '<pre>';

// create new DOM object:
$dom = new DomDocument();

// load HTML code:
$dom->loadHtml($html);

// get tags by tagname (all <a> tags / links):
$tags = $dom->getElementsByTagName('a');

// loop trough all links:
foreach ($tags as $a){

    print '<b>' . $a->nodeValue . '</b><br/>';

    // does this tag have attributes:
    if ($a->hasAttributes()){   

        // loop trough all attributes:
        foreach ($a->attributes as $attribute){     
            print '- ' . $attribute->name . ': ' . $attribute->value;
            print "<br/>";               
        }
    }

    print "<hr/>";
}

print '</pre>';

0 comments:

Post a Comment