用户名:
密 码: 记住
您当前的位置:首页 > 网络编程 > php教程

php 生成xml文件汉字中文编码问题

时间:2015-01-23  来源:西部数据  作者:西部数据

今天在利用php做一个交互时我需要生成xml文档,但是发现xml中汉字全部乱码了,下面小编来给各位同学介绍一下此问题解决办法.

先看一个把数组转换xml,代码如下:

  1. function array2xml($array$xml = false){  
  2.     if($xml === false){  
  3.         $xml = new SimpleXMLElement('<root/>');  
  4.     }  
  5.     foreach($array as $key => $value){  
  6.         if(is_array($value)){  
  7.             array2xml($value$xml->addChild($key));  
  8.         }else{  
  9.             $xml->addChild($key$value);  
  10.         }  
  11.     }  
  12.     return $xml->asXML();  
  13. }  
  14.   //开源代码phpfensi.com 
  15. header('Content-type: text/xml');  
  16. print array2xml($array); 

这样如果没有中文汉字没问题,如果有中文就有问题了,当内容出现汉字时会出现为空的情况,解决办法是转编码处理,代码如下:

  1. /*  
  2. php 数组转换成xml  
  3. */ 
  4.    
  5. function array2xml($array$xml = false){  
  6.     if($xml === false){  
  7.         $xml = new SimpleXMLElement('<root/>');  
  8.     }  
  9.     foreach($array as $key => $value){  
  10.         if(is_array($value)){  
  11.             array2xml($value$xml->addChild($key));  
  12.         }else{  
  13.             //$value=utf8_encode($value);  
  14.    
  15.             if (preg_match("/([x81-xfe][x40-xfe])/"$value$match)) {  
  16.                 $value = iconv('gbk''utf-8'$value);   //判断是否有汉字出现  
  17.             }  
  18.             $xml->addChild($key$value);  
  19.         }  
  20.     }  
  21.     return $xml->asXML();  
来顶一下
返回首页
返回首页
推荐资讯
WiFi太不安全:7岁女孩11分钟内入侵公共网络 WiFi太不安全:7岁女孩11分钟内入侵近期刚刚发布研究说WiFi网络能获得人们手机里多少私人信息,
不服跑个分?人工智能也出现“刷分”乱象 不服跑个分?人工智能也出现“刷分2014年,人工智能领域突然爆发,成为了科研和科技创业的热门
相关文章
栏目更新
栏目热门