【发布时间】:2012-02-05 19:06:51
【问题描述】:
我的数据库中有一些可能是从 word 文档中复制和粘贴的文本,其中包含一些弯引号和弯撇号。 PHP 代码正在生成 XML 数据/文档,将此文本作为其 XML 元素之一。
这是我在尝试显示 XMl 文档时遇到的错误
此页面包含以下错误:
第 1 列第 40 行的错误:编码错误
下面是第一个错误之前的页面渲染。
我已经按照here 帖子中的说明进行了尝试,但它对我不起作用。也试过了
$output = iconv('UTF-8', 'ASCII//TRANSLIT', $input);
如上所述here。这个显示文本,直到出现大引号或撇号。我需要在这里提及任何不同的字符输出格式吗?
在生成 XML 文档时,PHP 中是否有可用的函数来处理这些类型的特殊字符。我正在为 XML 文档使用 <?xml version="1.0" encoding="utf-8"?> 字符编码
这是我的一些代码
header('Content-type: text/xml');
echo '<?xml version="1.0" encoding="utf-8"?>';
$item = mysql_fetch_object($result);
<listitems>
<item>
<name><?=htmlspecialchars(stripslashes($item->name))?></name>
<details><?=htmlspecialchars(stripslashes($item->details))?></details>
.
.
.
.
</item>
</listitems>
【问题讨论】:
-
需要更多信息。获取数据时数据是什么字符集?你能展示一些你用来生成文档的 PHP 代码吗?
-
我已经用我的一些代码更新了我的问题。
-
数据库中的数据是什么字符集?
-
不确定。在表上它说 DEFAULT CHARSET=latin1
标签: php xml character-encoding format