【问题标题】:convert html (ï) for xml php将 html (ï) 转换为 xml php
【发布时间】:2014-06-20 18:21:23
【问题描述】:

我有一段 HTML 代码,我将其保存到一个 xml 文件(产品描述)中。当我导入 xml 时,它会挂在以下字符上:ï 可能还有其他字符。

如何将 html 代码转换为有效的 xml?

我通过下面一段 php 转换 html 并将其放入 CDATA 块中。

str_replace(array(chr(169),chr(153),chr(174)),'',trim(str_replace_first('</tr>', '<table class="attribute">', str_replace('valign=top', '', str_replace('class="normal"', '', GetBetween($product_page, '<td colspan=2>&nbsp;</td>', '</table>'))))));

我用 UTF-8 尝试了 htmlspecialchars、htmlentities,但没有任何帮助。

【问题讨论】:

  • 向我们展示如何您尝试使用不同的功能。
  • 字符“ï”在 XML 中和在 HTML 中一样有效。没有理由以任何方式转换它。您只需要确保 HTML 片段与 XML 文档采用相同的字符编码。如果不是,那么您需要将整个 HTML 片段从一种字符编码转换为另一种。执行此操作的方式取决于源编码和您环境中工具的可用性。

标签: php html xml


【解决方案1】:

尝试使用:

$data = htmlentities($data, ENT_QUOTES, "UTF-8");

【讨论】:

  • 谢谢,但这并没有像我提到的那样工作,例如保持 ï。
  • 好的。您是否有更多关于此问题的信息,例如 XML 代码或停止的完整行?
  • &lt;description&gt;Een krachtige processor geïnstalleerd.&lt;/description&gt; 例如,这是代码中断的 xml 行。我也注意到了这一点。在我的原始 xml 文件中,我有:&lt;productgroep&gt;Accu&amp;#xef;s / Batterijlader&lt;/productgroep&gt; 在 simplexml 保存的新 xml 文件中,它会自动转换为:&lt;productgroep&gt;Accuïs / Batterijlader&lt;/productgroep&gt;
  • 好的。那么你可以尝试使用PHP的iconv函数。
猜你喜欢
  • 1970-01-01
  • 2016-07-29
  • 2011-05-18
  • 1970-01-01
  • 2012-05-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多