|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2003-09-23 05:11 UTC] sniper@php.net
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Mon Dec 22 02:00:01 2025 UTC |
Description: ------------ I am performing an XSLT transformation using a stylesheet that does an xsl:import from an external URL. To handle the HTTP scheme I install a get_all scheme handler with the intent to retrieve the document from there. With the upgrade to Sablotron 1.0 (previously 0.97, which works fine) the handler gets called with an incorrect 'rest' parameter. It contains only the path of the URL, not the domain name. Reproduce code: --------------- function get_all_handler($processor, $scheme, $rest) { print "$scheme:$rest\n"; } $xsltProcessor = xslt_create(); xslt_set_scheme_handlers($xsltProcessor, array('get_all' => 'get_all_handler')); $args = array( '/_xml' => '<rootNode/>', '/_xsl' => '<?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:import href="http://example.com/stylesheet.xsl"/> </xsl:stylesheet>' ); xslt_process($xsltProcessor, 'arg:/_xml', 'arg:/_xsl', NULL, $args); xslt_free($xsltProcessor); Expected result: ---------------- http://example.com/stylesheet.xsl Actual result: -------------- http:/stylesheet.xsl