- print_r: documentation ( source)
- key: documentation ( source)
- next: documentation ( source)
- current: documentation ( source)
<?php
$doc = new DOMDocument();
$doc->loadHTML('<html><body><a href="teste.php">Teste</a><a href="../teste2.php">Teste2</a></body></html>');
$links = $doc->getElementsByTagName('a');
print_r($links);
foreach($links as $link) {
echo $link->getAttribute('href') . "\n";
}
echo $doc->saveHTML() . "\n\n";
$body = $doc->getElementsByTagName('body')[0];
$select = $doc->createElement('select');
$body->appendChild($select);
echo $doc->saveHTML() . "\n\n";
function addElement($doc, $newElement, $parentElement, $attributesArray = null) {
$pe = $doc->getElementsByTagName($parentElement)[0];
$ne = $doc->createElement($newElement);
$pe->appendChild($ne);
if (isset($attributesArray)) {
while ( ($current = current($attributesArray)) ) {
print_r($current);
$attrib = key($current);
$domAttribute = $doc->createAttribute($attrib);
// Value for the created attribute
$domAttribute->value = $current[$attrib];
// Don't forget to append it to the element
$ne->appendChild($domAttribute);
echo $attrib . '=' . $current[$attrib] . "\n";
next($array);
}
}
echo $doc->saveHTML();
}
$attribs = [
['style' => '"border:1px solid black;"']
];
addElement($doc, 'ul', 'select', $attribs);