Maison >développement back-end >Tutoriel XML/RSS >Analyse détaillée des problèmes d'encodage d'URL contenant des caractères chinois

Analyse détaillée des problèmes d'encodage d'URL contenant des caractères chinois

黄舟
黄舟original
2017-03-06 16:40:511714parcourir

Dans les applications XML, certaines informations URL sont souvent stockées sous forme de données XML et les paramètres URL peuvent contenir des caractères chinois. Lorsque vous utilisez dom pour analyser des données XML, les caractères chinois peuvent être codés.
Mais si vous utilisez uniquement xslt pour afficher des données XML (data.xml data.xsl), vous constaterez qu'il y aura une erreur d'encodage dans l'URL à ce moment-là, même si vous spécifiez le type d'encodage (encoding=". gb2312"), le même problème se produira toujours.
Le test a révélé qu'il s'agit d'un problème avec le mécanisme de mise en cache d'IE. IE utilisera toujours par défaut le type de contenu MIME de la nouvelle page (URL liée) sur text/xml

Solution :
1. Spécifiez le type de document de sortie comme document XML (exemple : data.xsl)

<xsl:output method="xml"  encoding="gb2312" media-type="text/xml" />

2. et spécifiez que la fenêtre cible est une autre fenêtre (exemple : data2. xsl)

 _blank
examples:
/*** data.xml ***/



 
  http://www.google.com/search?q=
  xml数据
 
 
  http://www1.baidu.com/baidu?word=
  xml数据
 
 
  http://www.google.com/search?q=
  极限编程(xp)
 
 
  http://www1.baidu.com/baidu?word=
  极限编程(xp)
 


/*** data.xsl ***/



<xsl:output method="xml"  encoding="gb2312" media-type="text/xml" />

   


 
  
  
 
 
/*** data2.xsl ***/ _blank

Ce qui précède est une analyse détaillée des problèmes d'encodage d'URL contenant des caractères chinois. Pour plus de contenu connexe, veuillez faire attention. sur le site Web PHP chinois (www.php.cn) !


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn