将MySQL的POINT转换为PHP中的文本

时间:2016-05-26 17:04:07

标签: php mysql gis geospatial

使用PHP,如何将POINT数据类型的值转换为类似POINT (-34.601020 -58.371020)的字符串(WKT或GeoJSON中的输出更可取)

如果我回显原始值,我会得到奇怪的字符。

我尝试过使用bin2hex,然后尝试将十六进制转换为字符串,但没有运气。

我知道MySQL的AsText(),但我想用PHP做。

1 个答案:

答案 0 :(得分:10)

最后我有这个工作!!!

我必须使用unpack才能从MySQL中提取二进制数据

$point_value = $data_from_db["point_field"];

$coordinates = unpack('x/x/x/x/corder/Ltype/dlat/dlon', $point_value);

echo $coordinates['lat'];
echo $coordinates['lon'];

Here是一个帮助我解决这个问题的tutotial