Du bist hier: Tips » Scripte » PHP
PHP
Referenzliste

xslt_set_error_handler

XSLT Funktionen

    Befehl:
void xslt_set_error_handler ( resource $xh , mixed $handler )


    Parameter-Liste:
NameBeschreibung
xhDer Link-Identifier des XSLT-Prozessors, der mittels xslt_create() erstellt wurde.
handlerDie Benutzerfunktion benötigt vier Parameter: den XSLT-Prozessor, das Errorlevel, den Fehlercode und ein Array der Nachrichten. Die Funktion kann so dargestellt werden:
error_handler( resource $xh, int $error_level, int $error_code, array $messages)

    Beschreibung:
Legt eine Errorhandler-Funktion für den mittels xh übergebenen XSLT-Prozessor fest. Diese Funktion wird aufgerufen, sobald ein Fehler in der XSLT-Transformation auftritt (die Funktion wird zudem für Noticecalls verwendet).


    Aktiv in Version:
(PHP 4 >= 4.0.4, PHP 7)

    Siehe auch:
Sets the object in which to resolve callback functions wenn Sie eine Objektmethode als Handler verwenden wollen
 

xslt_set_error_handler() - Beispiel:


Eingabe:
<?php
// Unser XSLT-Errorhandler
function xslt_error_handler($handler, $errno, $level, $info)
{
  // die Argumente anzeigen lassen
  var_dump(func_get_args());
}

// XML-Content:
$xml='<?xml version="1.0"?>
<para>
 Oops, ich habe den schliessenden Tag falsch geschrieben!
</pata>';

// XSL-Content:
$xsl='<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
   <strong><xsl:value-of select="para"/></strong>
</xsl:template>
</xsl:stylesheet>';

$xh = xslt_create();

xslt_set_error_handler($xh, "xslt_error_handler");

echo xslt_process($xh, 'arg:/_xml', 'arg:/_xsl',
                  NULL, array("/_xml" => $xml, "/_xsl" => $xsl));
?>


Ausgabe:
array(4) {
  [0]=>
  resource(1) of type (XSLT Processor)
  [1]=>
  int(3)
  [2]=>
  int(0)
  [3]=>
  array(6) {
    ["msgtype"]=>
    string(5) "error"
    ["code"]=>
    string(1) "2"
    ["module"]=>
    string(9) "Sablotron"
    ["URI"]=>
    string(9) "arg:/_xml"
    ["line"]=>
    string(1) "4"
    ["msg"]=>
    string(34) "XML parser error 7: mismatched tag"
  }
}
XSLT Funktionen