DOMElement::getElementsByTagName
(PHP 5)
DOMElement::getElementsByTagName — Gets elements by tagname
Description
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.
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Обработка XML
- Document Object Model
- Функция DOMElement::__construct() - Создание нового объекта класса DOMElement
- Функция DOMElement::getAttribute() - Возвращает значение атрибута
- Функция DOMElement::getAttributeNode() - Возвращает узел атрибута
- Функция DOMElement::getAttributeNodeNS() - Возвращает узел атрибута
- Функция DOMElement::getAttributeNS() - Возвращает значение атрибута
- Функция DOMElement::getElementsByTagName() - Возвращает элементы по имени тэга
- Функция DOMElement::getElementsByTagNameNS() - Получение элементов по локальному имени в заданном пространстве имен
- Функция DOMElement::hasAttribute() - Проверяет наличие атрибута
- Функция DOMElement::hasAttributeNS() - Проверяет, существует ли заданный атрибут
- Функция DOMElement::removeAttribute() - Удаляет атрибут
- Функция DOMElement::removeAttributeNode() - Удаляет атрибут
- Функция DOMElement::removeAttributeNS() - Удаляет атрибут
- Функция DOMElement::setAttribute() - Устанавливает значение атрибута
- Функция DOMElement::setAttributeNode() - Добавляет новый узел атрибута к элементу
- Функция DOMElement::setAttributeNodeNS() - Добавляет новый атрибут к элементу
- Функция DOMElement::setAttributeNS() - Добавляет новый атрибут
- Функция DOMElement::setIdAttribute() - Объявляет атрибут с заданным именем ключевым атрибутом
- Функция DOMElement::setIdAttributeNode() - Объявляет заданный узал атрибута ключевым
- DOMElement::setIdAttributeNS
Коментарии
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];
}
}
?>
Be aware that this function returns all descendants, not just immediate children.
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...
}