哪个更适合编码RSS的RSS?

时间:2008-10-27 19:19:13

标签: php rss cdata

我最近在我发布的一些RSS源中引入了HTML(到目前为止只有纯文本,没有标记),我想知道哪种方法更好:使用字符编码(例如htmlspecialchars)或者只是封装所有内容CDATA?

在我看来,CDATA可能更容易,但我不清楚选择一种方法与另一种方法是否存在任何原因(微妙或其他原因)。 (首先,在查看源代码时,CDATA方法会更容易阅读...)

4 个答案:

答案 0 :(得分:4)

CDATA适用于XML解析器不应解析的任何数据。任何不在CDATA块中的标签由XML解析器解析,并且可能具有不同的含义。

如果不需要,CDATA也会为解析器带来开销。

,只要您知道不会使用HTML(或其他方式),请尽量避免使用CDATA阻止

那就是说,我同意jamesh,因为你应该总是喜欢Atom而不是RSS。我生产一个提要阅读器,在抓取提要时,总是喜欢Atom而不是RSS。

答案 1 :(得分:3)

个人CDATA更容易,因为它允许订阅者显示实际的HTML而不需要他们的读者做任何有趣的事情。

如果您使用HTML编码,订阅者或网站自己必须解码源以显示HTML

答案 2 :(得分:1)

冒着给出答案的风险,您可能不想听到:使用Atom 代替 RSS。

Atom是一个很好的命名空间XML,因此您可以直接混合和匹配XHTML,而不必担心您询问的编码问题。

它几乎支持RSS所有,并且因为它只是普通的Atom,如果你真的不想使用库来操作它,它就更容易自己滚动。

Atom也是IETF标准,RSS不是。

答案 3 :(得分:0)

htmlentities()就像一个魅力。无需使用CDATA。 http://php.net/manual/en/function.htmlentities.php