簡體   English   中英

如何在PHP中處理MySQL POINT()字段?

[英]How can I handle a MySQL POINT() field in PHP?

我有一個帶有POINT字段的MySQL表來存儲GPS數據(經度和緯度),但我無法在PHP中處理它。

$query = "SELECT COORDS FROM PHOTOS";
$result = mysqli_query($db_conn, $query);
mysqli_fetch_assoc($result);
echo $result['COORDS'];

這樣我就得到一個奇怪的字符串。

我在MySQL控制台中使用了AsText,它給了我帶有coords的WKT,但是我想用PHP來捕獲它。

我想做這樣的事情:

$query = "SELECT AsText(COORDS) FROM PHOTOS";

但我的問題是如何通過PHP訪問該領域?

(我也聽說過PHP中的unpack()函數,但它會引發警告)

假設您已在db中存儲了一個幾何體,該文本從名為MY_POINT的列中的文本e GeomFromText('POINT(25 -118)')開始

您可以輕松獲得使用的X,Y坐標

SELECT ST_X(MY_POINT) as latitude,  ST_Y(MY_POINT) as longitude  FROM MY_TABLE;

在php中,你可以使用緯度和經度作為你的坐標數組中的列索引來訪問該值

SELECT ST_X(COORDS) as latitude,  ST_Y(COORDS) as longitude  FROM MY_TABLE;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM