在MySql数据库中,我有这样的点(以双精度表示的纬度和经度对):

LATITUDE | LONGITUDE
---------|----------
45.045664| 46.084528
26.938933| 60.903848
       .....


现在,我需要从数据库中获取这些要点(这根本不是问题),并以WKT格式回显它们(这一部分我不知道)。该PHP脚本将成为Windows App使用的API的一部分。

所以问题是:如何将点转换为WKT格式?我可以使用任何插件吗?最好的方法是什么?

提前致谢。

更新

输出应类似于WKT行,例如:

LINESTRING(3 4,10 50,20 25)

最佳答案

Mysql具有自己的GIS转换功能,可将存储在其内部几何数据类型中的数据转换为文本表示形式,例如WKT。

具体来说,使用ST_AsWKT(g) or ST_AsText(g)函数将数据转换为WKT格式:


  将内部几何格式的值转换为其WKT表示形式
  并返回字符串结果。

mysql> SET @g = 'LineString(1 1,2 2,3 3)'; mysql> SELECT
ST_AsText(ST_GeomFromText(@g));
+--------------------------------+ | ST_AsText(ST_GeomFromText(@g)) |
+--------------------------------+ | LINESTRING(1 1,2 2,3 3)        |
+--------------------------------+

  
  ST_AsText(),ST_AsWKT(),AsText()和AsWKT()是同义词。

关于php - 如何使用PHP将点从MySql数据库转换为WKT?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39305448/

10-11 05:50