Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Domxml Xpath, можно ли получить атрибут по значению (php5)?
Форум программистов > Интернет и сети > Web-программирование > PHP программирование
Medwoodu
проблема такая: есть DOM документ вида:
<p attrib1 = "1" attrib2 = "2"></p>
<p attrib1 = "3" attrib2 = "4"></p>
с помощью XPath я могу найти узел, в котором есть атрибут(имени я заранее не знаю) со значением например 2.
XP->query("//*[@*='2']");
Можно ли и как найти(вызвать) имя атрибута( =attrib2 )?
Medwoodu
РЕШЕНИЕ НАЙДЕНО
$doc = new DOMDocument; 
$doc->preserveWhiteSpace = false;
$XMLSTRING = <<< EOF
<div>
<p attrib1 = "1" attrib2 = "2">r</p>
<p attrib1 = "3" attrib2 = "4">t</p>
</div>
EOF;

$doc->LoadXML($XMLSTRING);

$xpath = new DOMXPath($doc);

$query = "//*[@*='2']";

$entries = $xpath->query($query);
print($XMLSTRING);
foreach ($entries as $entry) {
  foreach ($entry->attributes as $attribute) {
    if ($attribute->value == '2'){
      echo $attribute->name;
    };
  }
}
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2008 IPS, Inc.