Konfigurace parseru

Příklad 2. simplexml/konfigurace-parseru.php

<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01//EN'>
<html lang="cs">
  <head>
    <meta http-equiv="content-type" content="text/html;charset=utf-8">
    <title>Možnosti čtení z různých zdrojů dat</title>
  </head>
  <body>
<?php 

// načtení XML složeného z entit
$xml = simplexml_load_file("../syntaxe/externi-entity.xml");
echo $xml->kapitola->název, "<br>\n";     // nevypíše nic, protože se entity nenahradí

$xml = simplexml_load_file("../syntaxe/externi-entity.xml", "SimpleXMLElement", LIBXML_NOENT);
echo $xml->kapitola->název, "<br>\n";     // vypíše název kapitoly vložené z externí entity

?>
  </body>
</html>

Tabulka 1. Konstanty pro konfiguraci parseru a jejich význam

KonstantaPopis
LIBXML_DTDATTRDo dokumentu se doplní výchozí hodnoty atributů uvedené v DTD.
LIBXML_DTDLOADPři zpracování dokumentu se načte i externí DTD.
LIBXML_DTDVALIDDokument se zvaliduje oproti DTD.
LIBXML_NOBLANKSZ dokumentu se odstraní textové uzly s bílými znaky.
LIBXML_NOCDATAČásti dokumentu zapsané jako CDATA sekce se převedou na běžné textové uzly.
LIBXML_NOENTVeškeré odkazy na entity se nahradí obsahem těchto entit.
LIBXML_NONETPři zpracování dokumentu je zakázán přístup na síť, např. pro načítání externích DTD.
LIBXML_NSCLEANZ dokumentu se odstraní přebytečné deklarace jmenných prostorů
LIBXML_XINCLUDEPřed zpracováním se do dokumentu vloží části definované pomocí XInclude.