[英]XML Encoding generated from PHP
我正在为类做一个分配,在该类中,我必须使用在Tomcat上运行的Java Servlet,并让它向php文件发送消息,以刮取IMDB的电影信息并将其作为XML返回给Servlet。 这似乎不想接受任何编码我给它,因为我不断地得到XML标记,如下面的人。
<result cover="url" title="Pokémon" year="1998 TV Series" director="N/A" rating="7.8" details="http://www.imdb.com/title/tt0176385/"/>
口袋妖怪的头衔应在e(«é»)上加重音。 我有以下php代码来生成xml。 (仅重要部分)
<?php header("Content-Type: text/xml; charset=utf-8");
$xml = new DOMDocument();
$rsp = $xml->appendChild($xml->createElement("rsp"));
$xml->encoding = 'utf-8';
$titleNames[$i] = utf8_encode($title_tmp[1]);
$results = $rsp->appendChild($xml->createElement("results"));
$results->setAttribute("total", $tableRows);
$item->setAttribute("title", $titleNames[$i]);
echo $xml->saveXML();
?>
找出如何正确显示特殊字符的任何帮助将不胜感激!
无法说出代码片段中的问题(甚至无法运行),但是$xml->encoding = 'utf-8'
应该可以工作。 请比较:
$xml = new DOMDocument();
$rsp = $xml->appendChild($xml->createElement("rsp"));
$rsp->setAttribute("title", 'Pokémon');
echo $xml->saveXML();
/*
<?xml version="1.0"?>
<rsp title="Pokémon"/>
*/
...与:
$xml = new DOMDocument();
$xml->encoding = 'utf-8';
$rsp = $xml->appendChild($xml->createElement("rsp"));
$rsp->setAttribute("title", 'Pokémon');
echo $xml->saveXML();
/*
<?xml version="1.0" encoding="utf-8"?>
<rsp title="Pokémon"/>
*/
(这些片段应另存为UTF-8)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.