DOMElement::getElementsByTagName

(PHP 5, PHP 7, PHP 8)

DOMElement::getElementsByTagNameGets elements by tagname

说明

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

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

参数

qualifiedName

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

返回值

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

参见

add a note add a note

User Contributed Notes 3 notes

up
7
rudiger at greatdealsenterprises dot com
5 years 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
7
Brennon Brimhall
7 years ago
Be aware that this function returns all descendants, not just immediate children.
up
-56
ddkkdd twenty twenty at gmail dot com
14 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