XML中的HTML而不破坏有效性

时间:2012-02-15 19:57:24

标签: php html xml

我希望有人可以帮我解决以下问题。因为我在一天之后就在砖墙上。

我正在尝试从在线商店数据库中获取产品说明并生成XML Feed。 问题是描述包含HTML,因此在浏览器中查看时会破坏XML

这是代码行: -

echo    '<DESCRIPTION>' . $row['products_description'] . '</DESCRIPTION>';

我尝试过以下方法: -

echo    '<DESCRIPTION><![CDATA[' . $row['products_description'] . ']]></DESCRIPTION>';   

当我查看输出时,它会在第一个

处中断XML
<BR>

我知道PHP中的htmlentities但是这不起作用,因为我从另一个商店拿起XML来导入描述,并且当导入回来时它们不能正确显示

我希望有人可以提供帮助。感谢您花时间看看

1 个答案:

答案 0 :(得分:0)

首先整理HTML。

$config = array(
  'indent'         => true,
  'output-xhtml'   => true,
  'wrap'           => 200);

$tidy = new Tidy();
$tidy->parseString($row['products_description'], $config, 'utf8');
$tidy->cleanRepair();

echo    '<DESCRIPTION>' . $tidy. '</DESCRIPTION>';

您需要安装libtidy extension才能生效。