为什么我所有的XML都被转义了
本文关键字:转义 XML 为什么 | 更新日期: 2023-09-27 18:36:35
长时间侦听,第一次调用者。
这是我正在发生的事情...
创建了一个PHP网络服务,发送简单的数据类型(如字符串,int...返回字符串或整数没有问题。
现在我想以 XML 格式返回数据。
所以我创建了一个 DomDocument 并填写了所有数据......
然后我将其从服务中退回。
在我的客户端,当我将对象加载为 XML 文档时,我收到有关我的根格式不正确的错误。
我查看我的调试,所有"特殊"字符都已转义。
我做了一个黑客攻击,用>替换了"<"等等。
然后我可以加载结果。
这似乎不对,我应该能够返回格式正确的XML。
所以我猜这是我如何定义 xml 对象???
有人可以发布定义 xml 对象返回的 PHP 示例吗?
我已经找了好几天了,我找不到一个简单的例子,从MySql中选择数据,将其转换为XML,然后将XML返回给客户端。
I did a hack and replaced "<" with > and so on.
没有关于替换.XML有害字符的技巧,这是规则。在这里阅读有关此类角色的信息。相反,您可以使用以下代码:
function replace_characters_for_xml(&$str)
{
$str = str_replace("&","&",$str);
$str = str_replace(">",">",$str);
$str = str_replace("<","<",$str);
$str = str_replace("'","'",$str);
$str = str_replace('"',""",$str);
}
...
replace_characters_for_xml($string);
所以我创建了一个 DomDocument 并填写了所有数据......
我怀疑你在这里所做的一切都做错了。
我找到了一个不同的代码示例,用于将MySql数据存储到XML中。结果,这完成了我正在寻找的诀窍。
使用 PHP DOM 从 MySQL 数据创建 XML 文件