从 mysql 中的地理空间列中,我得到以下字符串值,我想将其转换为数组。最终目标是将其转换为 geoJSON。
POLYGON((4.885838 52.388063,4.891061 52.388381,4.890973 52.382909))
该字符串有 3 个坐标对,x 和 y 坐标用空格分隔,坐标对用逗号分隔。确切的数字是未知的和可变的。也POLYGON
可以不同于三种不同的设置。
以我对注册的一点了解。表达我想出了这个:
$pat = '/^(POLYGON|LINESTRING|POINT)(\(\() (.....) (\)\))$/';
preg_match($pat, $str, $matches);
用双括号的坐标部分作为不确定部分。
谁能帮我解决这个问题?
编辑最终生成的数组应如下所示:
$array['type'] = POLYGON | LINESTRING ....
$array['coordinates'] = array of all the coordinates.