xslt_set_error_handler
(PHP 4 >= 4.0.4)
xslt_set_error_handler — Imposta un error handler per un processore XSLT
Descrizione
Imposta una funzione di error handler per il processore XSLT dato da xh , questa funzione sarà richiamata quando ha luogo un errore nella trasformazione XSLT (questa funzione è anche richiamata per le nuove notizie dallo script).
La funzione utente deve ricevere quattro parametri: il processore XSLT, il livello di errore, il codice di errore ed una matrice di messaggi. La funzione potrebbe essere rappresentata come:
Esempi
Example#1 Esempio di uso di xslt_set_error_handler()
<?php
// Il nostro gestore degli errori XSLT
function xslt_error_handler($handler, $errno, $level, $info)
{
// Per ora visualizza i parametri
var_dump(func_get_args());
}
// contenuto XML:
$xml='<?xml version="1.0"?>
<para>
oops, I misspelled the closing tag
</pata>';
// Contenuto XSL:
$xsl='<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="https://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));
?>
Il precedente esempio visualizzerà qualcosa simile a:
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" } }
Vedere anche:
Vedere xslt_set_object() se si desidera utilizzare come handler un medoto di un oggetto.