(PHP 4 >= 4.0.3)

xslt_process -- Transform XML data through a string containing XSL data


bool xslt_process (string xsl_data, string xml_data, string result)


This function is EXPERIMENTAL. That means, that the behaviour of this function, this function name, in concreto ANYTHING documented here can change in a future release of PHP WITHOUT NOTICE. Be warned, and use this function at your own risk.

The xslt_process() takes a string containing the XSLT stylesheet as its first argument, it takes a second string containing the XML data you want to transform and then a third string containing the results of the transformation. xslt_process() will return TRUE on success and FALSE on failure, to get the error number and error string if an error occurs use the xslt_errno() and xslt_error() functions.

Example 1. Using the xslt_process() to transform three strings


$xslData = '<xsl:stylesheet

<xsl:template match="article">
    <table border="1" cellpadding="2" cellspacing="1">
            <td width="20%">
            <td width="80%">
                <h2><xsl:value-of select="title"/></h2>
                <h3><xsl:value-of select="author"/></h3>
                <xsl:copy-of select="p"/>


$xmlData = '<?xml version="1.0"?>
    <title>Learning German</title>
    <author>Sterling Hughes</author>
        Essential phrases:
        K&#246;nnen Sie mir sagen, wo die Toilette ist?<br/>
        Ein grosses Bier, bitte!<br/>
        Noch eins, bitte.<br/>

if (xslt_process($xslData, $xmlData, $result)) {
    echo "Here is the brilliant in-depth article on learning";
    echo " German: ";
    echo "<br>\n<br>";
    echo $result;
} else {
    echo "There was an error that occurred in the XSL transformation...\n";
    echo "\tError number: " . xslt_errno() . "\n";
    echo "\tError string: " . xslt_error() . "\n";