i use xslt and page can be generated in two mode, one using <? xml-stylesheet href='page.xsl' >, one other using the php sablotron lib, the first one use path relative to the xsl file for includes , but the second with sablotron consider all the includes as relative to the set base path, is there any way to get sablotron to resolve include as relative to xslt file instead of the set_base for all files ?
xslt_set_base
(PHP 4 >= 4.0.5)
xslt_set_base — Configure l'URI de base de toutes les transformations XSLT
Description
void xslt_set_base
( resource $xh
, string $uri
)
Configure l'URI de base de toutes les transformations XSLT. L'URI est utilisée avec les instructions Xpath pour résoudre les commandes document() et les autres commandes qui ont des accès externes. Il est également utilisé pour résoudre les URI pour les éléments <xsl:include> et <xsl:import>.
Liste de paramètres
- xh
-
L'identifiant du processus, créé par la fonction xslt_create().
- uri
-
L'URI de base à utiliser.
Valeurs de retour
Aucune valeur n'est retournée.
Historique
| Version | Description |
|---|---|
| 4.3.0 | À partir de PHP 4.3, la valeur par défaut de l'URI est le répertoire courant d'exécution du script. En effet, c'est le nom du répertoire contenu dans la constante __FILE__. Dans les versions antérieures à 4.3, la valeur par défaut de l'URI était moins prévisible. |
Notes
Note: Notez que vous devez préfixer le chemin par file:// si vous utilisez Windows.
xslt_set_base
h0bby1 at yahoo dot com
27-Feb-2008 02:20
27-Feb-2008 02:20
edmon at oohaa dot net
04-Oct-2004 01:09
04-Oct-2004 01:09
$filebase = 'file://' . getcwd () . '/xsl/';
xslt_set_base($xsltproc, $filebase);
file:// is needed for linux too.
php 4.3.8
Kelvin Cheng
10-Mar-2004 11:44
10-Mar-2004 11:44
It works great on my windows platform as below.
<?php
$xh = xslt_create();
$fileBase = 'file://' . getcwd () . '/';
xslt_set_base ( $xh, $fileBase );
...
?>
Actually, it make use of the getcwd() to get the current directory. Hope it can help.
