DOMElement::getElementsByTagName

(PHP 5, PHP 7)

DOMElement::getElementsByTagNameGets elements by tagname

Description

public DOMElement::getElementsByTagName ( string $name ) : DOMNodeList

This function returns a new instance of the class DOMNodeList of all descendant elements with a given tag name, in the order in which they are encountered in a preorder traversal of this element tree.

Parameters

name

The tag name. Use * to return all elements within the element tree.

Return Values

This function returns a new instance of the class DOMNodeList of all matched elements.

See Also

add a note add a note

User Contributed Notes 3 notes

up
1
rudiger at greatdealsenterprises dot com
5 months ago
Note that even though getElementsByTagName returns a NodeList which is defined as a list of DOMNodes, you're actually getting a list of DOMElements. That allows to call getElementsByTagName on each of the results.

$tables = $doc->getElementsByTagName('table');
foreach ($tables as $table) {
  $trs = $table->getElementsByTagName('tr');
  // etc...
}
up
5
Brennon Brimhall
2 years ago
Be aware that this function returns all descendants, not just immediate children.
up
-55
ddkkdd twenty twenty at gmail dot com
9 years ago
A simple function that uses this method to print the nodes it finds in an xml document. Improvements welcomed.

<?php
function printTags($tag){

 
$node = $this->doc->getElementsByTagName($tag);          
   for(
$c = 0; $c<$node->length; $c++){
    
$text[$c] =$this->doc->saveXML($node->item($c));
     echo
$text[$c];

   }

 
}
?>
To Top