文件名是 xml.php
<? header("Content-Type:text/xml;charset=gb2312");
echo "<?xml version='1.0' encoding='gb2312' ?>";
?>
<hello>
<hi>大连</hi>
    <hii>aaaaaaaaaaaaa</hii>
</hello>
为什么生成的文件时乱码呢?  <?xml version="1.0" encoding="gb2312" ?> 
- <hello>
  <hi>澶ц繛</hi> 
  <hii>aaaaaaaaaaaaa</hii> 
  </hello>

解决方案 »

  1.   

    别忘了你的 xml.php 文件也是用“某种编码方式”书写的,你那里的“大连”两个字就是用这种编码方式存储的,也是用这种编码方式所产生的字节流传送给客户端的。而你这个 xml.php 显然是用 UTF-8 书写的。改正的办法有两个:1. 用 GB2312 编码重新书写你的 xml.php 文件。2. 把程序中的 gb2312 改成 utf-8。
    ————————————————————————————————
    基于CSDN论坛提供的插件扩展功能,自己做了个签名档工具,分享给大家,欢迎技术交流 :)
      

  2.   

    程序改为,统一编码为utf-8:
    <? header("Content-Type:text/xml;charset=utf-8");
    echo "<?xml version='1.0' encoding='utf-8' ?>";
    ?>
    <hello>
        <hi>大连</hi>
        <hii>aaaaaaaaaaaaa</hii>
    </hello>