我已经在PHP中编写了一个小类来生成一个简单的RSS提要。RSS提要:htmlspecialchars()与CDATA
项目描述还应该能够包含html标签。
我想知道哪一个是更好的方式和什么优点/每种方法的优缺点:
$item .= "<description><![CDATA[" . $description . "]]></description>\n";
或
$item .= "<description>" . htmlspecialchars($description, ENT_NOQUOTES, "UTF-8") . "</description>\n";
的CDATA方法唯一的缺点我能想到的是,我必须事先检查,如果字符串$ description包含
"<![CDATA[" or "]]>".
谢谢提前澄清。
我也曾经遇到仍然与RSS提要乱七八糟的字符(使其无效),使用用htmlspecialchars(),当对不起,我不能更具体地说 – kalpaitch
您应该使用XML编写器库来生成XML,而不是手动将它组合在一起。 – deceze