JavaScript Editor Javascript debugger     Website design 


Set an error handler for a XSLT processor (PHP 4 >= 4.0.4)
void xslt_set_error_handler ( resource xh, mixed handler )

Set an error handler function for the XSLT processor given by xh, this function will be called whenever an error occurs in the XSLT transformation (this function is also called for notices).



The XSLT processor link identifier, created with xslt_create().


The user function needs to accept four parameters: the XSLT processor, the error level, the error code and an array of messages. The function can be shown as:

Return Values

No value is returned.


Example 2665. xslt_set_error_handler() Example


// Our XSLT error handler
function xslt_error_handler($handler, $errno, $level, $info)
// for now, let's just see the arguments

// XML content :
$xml='<?xml version="1.0"?>
oops, I misspelled the closing tag

// XSL content :
$xsl='<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="">
<xsl:template match="/">
  <strong><xsl:value-of select="para"/></strong>

$xh = xslt_create();

xslt_set_error_handler($xh, "xslt_error_handler");

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


The above example will output something similar to:

array(4) {
 resource(1) of type (XSLT Processor)
 array(6) {
   string(5) "error"
   string(1) "2"
   string(9) "Sablotron"
   string(9) "arg:/_xml"
   string(1) "4"
   string(34) "XML parser error 7: mismatched tag"

See Also
xslt_set_object() if you want to use an object method as handler