Cliquez ici.
Accueil
 chercher             Plan du site             Info (English version) 
L'histoire de XML s'écrit en ce moment même. XMLfr vous aide à la suivre et à en dégager les tendances.Les listes de discussions XMLfr sont à votre disposition pour réagir sur nos articles ou simplement poser une question.Si vous ètes passionnée(e) par XML, pourquoi ne pas en faire votre métier ?XMLfr n'est heureusement pas le seul site où l'on parle de XML. Découvrez les autres grâce à XMLfr et à l'ODP.Les partenaires grâce auxquels XMLfr peut se développer.Pour tout savoir sur XMLfr.XMLfr sans fil, c'est possible !Pour ceux qui veulent vraiment en savoir plus sur XML.L'index du site.
 Commentaires et questions non techniques.Commentaires et questions techniques.

 
Cliquez ici.

From: Carbone Cedric (C.Carbone@NEOPOST.FR)
Date: 10/05/2004 - 10:10


PHP5 et XSLT

C'est tout =E0 fait possible (=E0 n'utiliser que lorsque vous ne pouvez =
pas
faire un certain traitement car vous perdez le fait que votre feuille =
XSLT
soit portable...)=20

Voila un exemple XSLT avec le calcul de la date courante confi=E9 =E0 =
PHP

<?php=20
function date () {=20
        return strftime("%A");=20
}=20

$domXsl =3D new DomDocument();=20
$domXsl->load("monStyle.xsl");=20
$domData =3D new DomDocument();=20
$domData->load("mesDonnees.xml");=20

$xslt =3D new XsltProcessor();=20
        $xslt->registerPhpFunctions();=20
$xsl =3D $proc->importStylesheet($domXsl);=20
$proc->setParameter(null,"name","value");=20
$newdom =3D $proc->transformToDoc($domData);=20
print $domResultat->saveXML();
?>=20

N'oubliez pas la m=E9thode registerPhpFunctions() sur le processeur =
XSLT qui
permet d'indiquer =E0 PHP qu'il a le droit d'executer les fonctions PHP =
de la
stylesheet (pour des raisons de s=E9curit=E9... pouvez vous faire =
confiance =E0
des XSLT tierce qui pourraient appeler des fonctions PHP???) Pour =
l'instant
aucun modele plus fin n'est d=E9velopp=E9 (et ne sera d=E9velopp=E9 =
pour PHP5 =E9tant
donn=E9 qu'il est en RC) mais on pourra s=FBrement greff=E9 un petit =
module qui
permettra une gestion plus fine de la s=E9curit=E9 (cad limiter =
l'utiliser des
fonctions PHP dans la feuille XSLT qu'=E0 un certain nombre de =
fonctions)

et la feuille XSLT qui fait appel =E0 la fonction PHP
<?xml version=3D"1.0" encoding=3D"iso-8859-1"?>=20
<xsl:stylesheet version=3D"1.0"
xmlns:xsl=3D"http://www.w3.org/1999/XSL/Transform"
xmlns:php=3D"http://php.net/xsl">=20
<xsl:template match=3D"/">=20
  <xsl:value-of select=3D"php:function(&#8216;date&#8217;)" />=20
</xsl:template>=20
</xsl:stylesheet>=20

Esperant que cela vous aide,

Cordialement,
C=E9dric Carbone
cedric.carbone<at>brainsoft.fr

-----Message d'origine-----
De : Benoit Fleury [mailto:Benoit.Fleury@etu.enseeiht.fr]
Envoy=E9 : dimanche 9 mai 2004 22:56
=C0 : xml-tech@xmlfr.org
Objet : [xml-tech] Re: code php dans xml/xsl

Jean-Marie Hoornaert wrote:

>Bonsoir,
>
>Est-il possible, et si oui comment, de placer du code php dans =
une=3D20
>feuille de style xsl qui transforme un document xml en feuille =
xhtml?=3D20
>Ceci de fa=3DE7on =3DE0 ce que ce que code s'ex=3DE9cute sur le =
serveur.
>
>
>--=3D20
>Cordialement.
>
>Jean-Marie -HOO;-)
>____________________
>Jean-Marie Hoornaert
>Courriel : jmh@h2o.be
>PPsP* : http://www.h2o.be
> Newsletter : abonnement@h2o.be?subject=3D3Dabonnement_h2o
>* Page Personnelle sans Pr=3DE9tention
>* pour AppleScripter FileMaker=3D20=3D
>
>--
>Devenez redacteur <XML>fr et contribuez au developpement du
>xml francophone (http://xmlfr.org/infos/redacteurs/) !
>
>Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
>
>Cette liste est a votre disposition pour discuter en francais de=20
>tout sujet technique lie a XML.
>
>Pour resilier votre abonnement, envoyez un message contenant=20
>la commande "unsubscribe" a xml-tech-request@xmlfr.org
>(mailto:xml-tech-request@xmlfr.org?Subject=3Dunsubscribe)
>
>
>
> =20
>
Il me semble que php5 offre cette possibilit=E9 justement.

-- Benoit Fleury

--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !

Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).

Cette liste est a votre disposition pour discuter en francais de=20 tout sujet technique lie a XML.

Pour resilier votre abonnement, envoyez un message contenant=20 la commande "unsubscribe" a xml-tech-request@xmlfr.org (mailto:xml-tech-request@xmlfr.org?Subject=3Dunsubscribe) -- Devenez redacteur <XML>fr et contribuez au developpement du xml francophone (http://xmlfr.org/infos/redacteurs/) !

Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).

Cette liste est a votre disposition pour discuter en francais de tout sujet technique lie a XML.

Pour resilier votre abonnement, envoyez un message contenant la commande "unsubscribe" a xml-tech-request@xmlfr.org (mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)



Archive générée par hypermail 2.1.3 le 28/06/2004 - 11:06 UTC

webmaster@xmlfr.org

 

xml tech

Discussions techniques au sujet de XML.

Cette liste est à votre disposition pour discuter en français de tout sujet technique lié à XML.



Devenez rédacteur <XML>fr et contribuez au développement du xml francophone !
Les documents publiés sur ce site le sont sous licence "Open Content"
Conception graphique
  l.henriot@online.fr  

Conception, réalisation et hébergement