【发布时间】:2016-07-04 02:37:29
【问题描述】:
我有一个奇怪的问题,我必须读取存储在 mySQL 数据库中的 XML 结构,如下所示:
<geocercaPoligonal>
<nombreGeocerca>Kennedy</nombreGeocerca>
<longitud>-79.89726930856705</longitud>
<latitud>-2.1599807309506396</latitud>
<longitud>-79.9029341340065</longitud>
<latitud>-2.172760363061884</latitud>
</geocercaPoligonal>
当我得到关于 PHP 的查询(使用 PDO Fetch:Assoc)并输出结果时,结果如下:
' Kennedy -79.89726930856705 -2.1599807309506396 -2.172760363061884 -79.9029341340065 '
所有标签都被省略,这会导致读取此数据时出错,我必须从特定标签中获取值,我得到一个 XML 加载字符串
DB::getRow 是一个准备/执行 PDO 函数
$geocerca = DB::getRow('SELECT * FROM GeocercasxUsuario WHERE IdGeocerca = :IdGeocerca', ['IdGeocerca' => $IdGeocerca]);
$infoXML = simplexml_load_string($geocerca['InformacionGeografica']);
//The field from the database with the XML string
它得到这个信息
SimpleXMLElement::__set_state(array(
'nombreGeocerca' => 'Kennedy',
'longitud' => array(
0 => '-79.89726930856705',
1 => '-2.172760363061884',
),
'latitud' => array(
0 => '-2.1599807309506396',
1 => '-79.9029341340065',
),
))
它没有正确读取 XML 结构,我该如何解决这个问题?是 PHP 还是 mySQL 的东西?
【问题讨论】: