Bonjour,

j'ai utilisé cette fonction php dans un fichier xsl:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
function UcFirstAndToLower($str)
{
     return ucfirst(strtolower(trim($str)));
}
sur un champs d'un tableau :

le code XSL:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
<td align="center"><xsl:value-of disable-output-escaping="yes" select="php:function('UcFirstAndToLower', string(struct/var[@name='nom']))" /></td>
resultat : cette erreur :


Warning: XSLTProcessor::transformToXml() [function.XSLTProcessor-transformToXml]: output conversion failed due to conv error, bytes 0xE8 0x9C 0x61 0x6E in C:\Documents and Settings\mo\Mes documents\html\5.php on line 31

la ligne 31 est la suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
echo $proc->transformToXML($dom);
dans le fichier XSL j'effectue une lecture en boucle d'un fichier XML, cette lecture est interrompue à la 23éme lecture.

cause de l'interruption de la lecture:
le mot à lire est : B&#x20C;ANGER ... donc un probléme d'encodage!

j'ai essayé de modifier ma fonction php pour avoir:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
function UcFirstAndToLower($str)
{
		utf8_decode($str);
     return ucfirst(strtolower(trim($str)));
}

mais rien n'a changé!!


help!!!


merci


...