Nápověda:Validace XML v PHP

Z VirtlabWiki

Přejít na: navigace, hledání

Tenhle typ validace lze použít jen v PHP5.

Validace proti DTD

Validovaný soubor může být lokální i vzdálený. DTD soubor, proti kterému se soubor ověřuje, musí být zadán uvnitř souboru (klauzule <!DOCTYPE ) - přímo nebo odkazem. Pokud máte XML data uložena v proměnné, tak místo $dom->load($path) použijte $dom->loadXML($string)

  $path = "http://www.w3.org/TR/xhtml1/";
  //$path = "soubor.xml";

  $dom = new DOMDocument;
  $dom->load($path);
  if(!($dom->validate()))
    die("Document is INVALID!\n");
  else
    print("Document is VALID!\n");


Validace proti Relax-ng

Jazyk PHP (ve verzi 5) má přímo zabudovánu podporu pro validaci proti tomuto schématu. Jedná se o několik tříd z rodiny DOM (Document Object Model). Pro validaci nám stačí napsat pouze pár řádků:

  $dom = new DOMDocument();
  $dom->load("soubor_k_validaci.xml");
  $vysledek = $d->relaxNGValidate("tady_je_RELAXNG_schema.rng");
Osobní nástroje