Ukázka čtení DOM dokumentu

Příklad 8. dom/cteni.php

<?php

Header("Content-type: text/html;charset=utf-8");

$doc = DOMDocument::loadXML("
<článek>
  <autor>Pepa</autor>
  <název>Untitled</název>
</článek>
"); 

// jak se nemá číst dokument přes DOM
echo "Autor článku: " . $doc->documentElement->firstChild->firstChild->nodeValue . "<br>\n";

// trošku lepší postup
echo "Autor článku: " . $doc->getElementsByTagName("autor")->item(0)->firstChild->nodeValue . "<br>\n";

// problém?
$doc = DOMDocument::loadXML("
<článek>
  <autor><!-- Nejsem si jistý, jak se jmenoval -->Pepa</autor>
  <název>Untitled</název>
</článek>
"); 

echo "Autor článku: " . $doc->getElementsByTagName("autor")->item(0)->firstChild->nodeValue . "<br>\n";

// ještě lepší postup
echo "Autor článku: " . $doc->getElementsByTagName("autor")->item(0)->textContent . "<br>\n";

// nejlepší postup
$nl = $doc->getElementsByTagName("autor");
if ($nl->length > 0)
  echo "Autor článku: " . $nl->item(0)->textContent . "<br>\n";

?>