我尝试将字符串中的百分比符号替换为html " %
"。我使用str_replace:
$string = 'test10%';
str_replace('%', '%', $string);
,但结果是&#37
。
如果您的文本是"%"并且您使用XMLWriter
来编写它,那么它将确保您的文本被正确地表示为XML并相应地将其编码为&#37
。这就是文本 "%"的正确XML表示。
您要做的是将已经编码的XML写入XML,为此您需要使用XMLWriter::writeRaw
。但是,您需要确保传递给XMLWriter::writeRaw
的所有文本都已经正确地进行了XML编码,因为这允许您随意破坏XML语法。见http://php.net/manual/en/function.xmlwriter-write-raw.php
…Web服务提供商要求获得百分比为
%
顺便说一句,这是一个非常愚蠢的要求,并且指向了他们这边一个坏的XML解析器。必须说出来