因为我在 Limesurvey 中使用 map 界面,所以我的 mySQL 数据库会在表“geo”中填充“文本”字段,如下所示:
27.059125784374068;-102.65625;CITY;STATE;COUNTRY;
我在演示 map 中使用的代码会查找特定的纬度/经度信息以迭代地标:
$encodedString = "";
$x = 0;
$result = mysql_query("SELECT * FROM `geo`");
while ($row = mysql_fetch_array($result, MYSQL_NUM))
{
if ( $x == 0 )
{
$separator = "";
}
else
{
$separator = "****";
}
$encodedString = $encodedString.$separator.
"<p class='content'>
<br><b>Lon:</b> ".$row[0].
"<br><b>Lat:</b> ".$row[1].
"<br><b>SiteName: </b>".$row[2].
"<br><b>Country: </b>".$row[4].
"<br><b>PI: </b>".$row[5].
"</p>&&&".$row[1]."&&&".$row[2];
$x = $x + 1;
}
尝试从 geoBlob 中提取纬度/经度值会让我的生活变得更加困难吗?有没有办法按原样使用文本字段?
我正在提取 lon 值,如下所示:
$result = mysql_query("SELECT geoBlob FROM `geo`");
while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
$arr = array();
foreach ($row as $k=>$v)
{
$breakEmUp = explode(";", $v);
$lon = $breakEmUp[0];
$arr[] = $lon;
}
$lonArray = join (", " , $arr);
但我不知道如何将这些碎片组合在一起。
这里超出了我的理解范围。叔叔!任何帮助表示赞赏。
最佳答案
最好将每个文本放入不同的字段,这样比必须使用字符串分隔符更容易。
关于java - 从 mySQL 数组字段中检索单独的元素并迭代以创建映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20036930/