PHP读取数据库中记录生成XML时,记录中有中文怎么处理
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了PHP读取数据库中记录生成XML时,记录中有中文怎么处理,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1525字,纯文字阅读大概需要3分钟。
内容图文
PHP读取数据库中记录生成XML时,记录中有中文怎么办我希望用PHP的DOM函数生成XML文档,如果文档中有中文就出错,即使用CDATA包含中文也没用,代码如下:
require('conn.php');
$owen1='学生工作';
header('Content-type:text/xml');
$result=$conn->query("select * from news where BigClassName='$owen1' limit 4");
if ($result)
{
$dom = new DOMDocument('1.0','UTF-8');
$dom->formatOutput=true;
$rcs = $dom->createElement("rss");
while ($row=$result->fetch_assoc()){
//print_r($arr);
$rc = $dom->createElement("channel");
$mydate=$dom->createElement("title");
$myname = $dom->createElement("link");
$mydescription=$dom->createElement("description");
$myhp=$dom->createElement("item");
$date=$row['title'];
$datetext = $dom->createTextNode('');
$mydate->appendChild($datetext);
$nametext=$dom->createTextNode($name);
$myname->appendChild($nametext);
$hptext=$dom->createTextNode($hp);
$myhp->appendChild($hptext);
$descriptiontext=$dom->createTextNode($description);
$mydescription->appendChild($descriptiontext);
$rcs->appendChild($rc);
$rc->appendChild($mydate);
$rc->appendChild($myname);
$rc->appendChild($myhp);
$rc->appendChild($mydescription);
}
$dom->appendChild($rcs);
echo $dom->saveXML();
}
执行,就提示在最新动态这遇到不合格式的字符,要怎么改啊 分享到:
------解决方案--------------------
写入 XML 的要用 utf-8 编码的数据
两个方案:
1、在你的代码中就从数据库中读出的数据都用 iconv 函数转码
$date = iconv('gbk', utf-8', $row['title']);
$datetext = $dom->createTextNode(iconv('gbk', utf-8', ''));
其他类同
2、直接从数据库中读取 utf-8 编码的数据
$conn->query("set nemes utf8");
内容总结
以上是互联网集市为您收集整理的PHP读取数据库中记录生成XML时,记录中有中文怎么处理全部内容,希望文章能够帮你解决PHP读取数据库中记录生成XML时,记录中有中文怎么处理所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。