【发布时间】:2015-02-07 20:01:00
【问题描述】:
我有许多字段由用户在表单上填写,然后通过 SOAP 发送到 Web 服务。当我构建我的 XML 以传递用户条目时,它通常可以正常工作。但是,在一些 API 失败的情况下,我遇到了一些问题,我知道这与用户输入的字符有关。
是否有适当的方法来转义要通过 XML 发送的字符串?我读过很多关于使用 htmlspecialchars() 的帖子,然后也有很多人说这是不好的做法。我最近也意识到我应该将编码更改为 UTF-8?
我确信我可能会对这篇文章投下反对票,因为我承认我在 XML 方面没有太多专业知识。在这里寻找最佳实践,因此我对该 API 的调用尽可能可靠,并真诚感谢任何指导。
这是 XML sn-p:
//BUILD FIELD DATA
$xmlStr = "<?xml version=\"1.0\" encoding=\"us-ascii\"?>
<record>
<field Name=\"dateCreated\" Text=\"".$DATE_CREATE."\" />
<field Name=\"purpose\" Text=\"".$PURPOSE."\" />
<field Name=\"comments\" Text=\"".$COMMENTS."\" />
<field Name=\"terms\" Text=\"".$TERMS."\" />
</record>";
【问题讨论】:
-
我没有答案,我只是想说没有人应该因为你缺乏知识而对你投反对票。如果你什么都知道,你就不会在这里。投票应该反映问题的质量和相关性。我也见过几个字符串转义问题,one I asked and answered myself。我根本不是专家,祝你好运!
-
@philtune 谢谢!我衷心感谢!
-
编码为 UTF-8 是个好主意,尤其是当您要接收多种语言的输入时。
-
你在哪里验证 PHP 中的输入?