[英]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.