繁体   English   中英

将xml字符串逐字转储到mysql db

[英]dump xml string verbatim to mysql db

我需要将xml字符串(作为POST参数进入Web服务)直接转储到Mysql DB中。 尽管我也尝试过Blob,但我正在写入的列当前的类型为“文本”。

现在,当我保存字符串并稍后使用sql检索它时,它以类似序列化的格式返回,如下所示:

a:1:{s:14:"<?xml_encoding";s:1502:"UTF-8?><record>
                <nodes></nodes>
              </record>";}

鉴于我需要将该xml解析为一个simplexml对象,因此需要更好地形成它。

这是我在代码方面的工作:

  • 接受Web服务中的Post Param

  • 使用类似ORM的ORM序列化并将其存储在DB中

    $ record-> xml_rec =序列化($ _POST)

  • 检索并回显。

奇怪的是,如果我反序列化并且echo在重试时,我得到一个数组。 数组在print_f上看起来像这样

Array
(
[<?xml_encoding] => UTF-8?><record>
                <nodes></nodes>
              </record>
)

simplexml仍无法解析。

这是mysql的存储问题,还是我对POST参数做错了? 我尝试了htmlspecialchars将字符串保存在db中,但是仍然存在类似的问题。

任何帮助表示赞赏,谢谢

您拥有的是一个“序列化”的php数组,您可以通过使用... PHP的反序列化功能来对其进行反序列化

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM