-1

我正在将一些数据从 kml 文件导出到 mysql,<multigeometry>我想将一个 xml 块作为原始 xml 保存在数据库中(因为它太复杂而无法分解),我的计划是使用 json_encode 然后转换 json读取 mysql 表时返回 xml,但事实证明这个任务非常复杂,

是否有可能以某种方式从 stdclass 获取 xml?或者有没有更好的方法将其保存在数据库中并转换回 XML?

$xml = simplexml_load_file("countries.kml")
foreach($xml->children() as $nodes){
    foreach($nodes->children() as $n => $data){
        mysql_query("insert into tbl_countries (varname,ISOA2,multigeometry) values ('".$data->name."','".substr($data->description,7,2)."','".json_encode($data->MultiGeometry)."')") or die(mysql_error());
          }
}
4

1 回答 1

0

您应该能够使用其asXML方法从任何 SimpleXMLElement 重新创建 xml 部分。

只需将json_encode($data->MultiGeometry)零件替换为$data->MultiGeometry->asXML().

注意:强制不要再使用mysql_*函数,它们已被弃用,请参阅选择 mysl api 页面。

于 2012-10-26T08:55:29.683 回答