1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
|
--TEST--
Test 11: php:function Support
--SKIPIF--
<?php require_once dirname(__FILE__) .'/skipif.inc'; ?>
--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");
$proc = new xsltprocessor;
$xsl = $proc->importStylesheet($dom);
$xml = new DomDocument();
$xml->load(dirname(__FILE__)."/xslt011.xml");
$proc->registerPHPFunctions();
print $proc->transformToXml($xml);
function foobar($id, $secondArg = "" ) {
if (is_array($id)) {
return $id[0]->value . " - " . $secondArg;
} else {
return $id . " - " . $secondArg;
}
}
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();
}
class aClass {
static function aStaticFunction($id) {
return $id;
}
}
--EXPECTF--
Test 11: php:function Support
Warning: XSLTProcessor::transformToXml(): A PHP Object cannot be converted to a XPath-string in %s on line 16
<?xml version="1.0"?>
foobar - secondArg
foobar -
this is from an external DomDocument
from the Input Document
static
|