<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- $Id: xslt.xsl,v 1.1 2003-10-27 08:46:55 chregu Exp $ -->
+<!-- $Id: xslt.xsl,v 1.2 2003-11-29 13:01:19 chregu Exp $ -->
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
+
<xsl:output method="xml" encoding="iso-8859-1" indent="no"/>
<xsl:param name="foo" select="'bar'"/>
<xsl:template match="/">
--FILE--
<?php
print "Test 11: php:function Support\n";
+ Class foo {
+ function foo() {}
+ function __toString() { return "not a DomNode object";}
+ }
$dom = new domDocument();
$dom->load(dirname(__FILE__)."/xslt011.xsl");
$xml = new DomDocument();
$xml->load(dirname(__FILE__)."/xslt011.xml");
-
print $proc->transformToXml($xml);
function foobar($id ) {
if (is_array($id)) {
return $id;
}
}
+ function nodeSet($id = null) {
+ if ($id and is_array($id)) {
+ return $id[0];
+ } else {
+ $dom = new domdocument;
+ $dom->loadXML("<root>this is from an external DomDocument</root>");
+ return $dom->documentElement ;
+ }
+ }
+ function nonDomNode() {
+ return new foo();
+ }
--EXPECT--
Test 11: php:function Support
<?xml version="1.0"?>
foobar
foobar
+this is from an external DomDocument
+from the Input Document
+not a DomNode object
<xsl:text>
</xsl:text>
<xsl:value-of select="php:function('foobar', /doc/@id)"/>
+<xsl:text>
+</xsl:text>
+<xsl:value-of select="php:function('nodeSet')"/>
+<xsl:text>
+</xsl:text>
+<xsl:value-of select="php:function('nodeSet',/doc)/i"/>
+<xsl:text>
+</xsl:text>
+<xsl:value-of select="php:function('nonDomNode')"/>
</xsl:template>
</xsl:stylesheet>