我有一个来自drupal文本区域的字符串。 drupal中的字符串包含html标签,但是当我打印字符串时,我看不到它们。
此字符串稍后会进入new SimpleXMLElement
,但由于它有一些有问题的字符,我想调用它:
$string = htmlspecialchars($string, ENT_XML1 | ENT_QUOTES,'UTF-8', false);
问题是之后,我的字符串看起来如下
<?xml version="1.0" encoding="UTF-8"?>
<Data xmlns="http://www.digitalmeasures.com/schema/data" xmlns:dmd="http://www.digitalmeasures.com/schema/data-metadata" dmd:date="2016-11-03">
<Record userId="1" username="y" dmd:surveyId="1127463">
<dmd:IndexEntry indexKey="x" entryKey="x & x" text="x & Life x"/>
这是字符串的一小部分
因此,当我打电话给SimpleXMLElement
时,我正在
String could not be parsed as XML
我试图在double_encode
值设置为false
的情况下避免这种情况,但它无效。
我无法删除SimpleXMLElementon
步骤,它打破了一些drupal的功能。
我做错了什么?
____ EDIT _____
作为检查我用
替换了htmlspecialchars$replace = str_replace('&', '&', $string);
这很好。
答案 0 :(得分:0)
$ replace = str_replace('&amp;','&amp;',$ string);