php 用dom输出xml相关 问题

wwhw2009 2009-12-07 05:20:26
用dom自动生成xml文档,里面用了个createCDATASection这个函数用来生成cdata。但是结果显示时,cdata里的中文无法显示,英文的话就可以,哪位知道怎么解决,帮帮小弟
...全文
92 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
程序猿之殇 2009-12-08
  • 打赏
  • 举报
回复
如果文件本身是utf-8的话,直接用,如果不是,用iconv转换.
$doc = new DOMDocument("1.0",'utf-8');

$node = $doc->createElement("para");
$data = $doc->createCDATASection("我爱PHP");
//$data = $doc->createCDATASection(iconv('gbk','utf-8',"我爱PHP"));
$node->appendChild($data);
$newnode = $doc->appendChild($node);

echo $doc->saveXML();
wwhw2009 2009-12-08
  • 打赏
  • 举报
回复
有点了解了。谢谢了
程序猿之殇 2009-12-08
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 wwhw2009 的回复:]
麻烦您给举个例子呗,谢了。
[/Quote]
2楼不就是完整的例子吗?

其实原理就是,如果你文件本身是utf-8的话,哪直接操作中文就可以了.
如果不是,哪需要用函数,比如说iconv转换一下.

$data = $doc->createCDATASection("我爱PHP");
//$data = $doc->createCDATASection(iconv('gbk','utf-8',"我爱PHP"));
wwhw2009 2009-12-08
  • 打赏
  • 举报
回复
麻烦您给举个例子呗,谢了。
程序猿之殇 2009-12-08
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 wwhw2009 的回复:]
你说的是什么意思,不明白,刚学php
[/Quote]
意思就是说,dom操作的中文要都转成utf-8
wwhw2009 2009-12-08
  • 打赏
  • 举报
回复
你说的是什么意思,不明白,刚学php
程序猿之殇 2009-12-08
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wwhw2009 的回复:]
还有个请教下,就是不用这个函数的时候,比如 用dom实现 <dd>天想 </dd>  这个的时候为什么中文也不能显示呢 
[/Quote]
中文不显示,就是编码的问题.
一定要保证且必须,操作的中文是utf-8的.
wwhw2009 2009-12-08
  • 打赏
  • 举报
回复
还有个请教下,就是不用这个函数的时候,比如 用dom实现 <dd>天想</dd> 这个的时候为什么中文也不能显示呢
wwhw2009 2009-12-07
  • 打赏
  • 举报
回复
为什么createCDATASection()里有中文无法显示

21,891

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧