MySQL выбирает значение пространственного поля и преобразует его в WKT с помощью PHP


Если выбрать значение пространственного поля из MySQL без преобразования его в текст в запросе, я получу "нечитаемую" строку в PHP. Какую функцию я могу использовать для преобразования этого в WKT?

Пример:

SELECT AsText(polygon_field) FROM Table; // gives a nice WKT string.
SELECT polygon_field FROM Table; // gives an unreadable (binary?) string.

Из-за ограничений в используемой нами структуре было бы здорово, если бы эту строку можно было преобразовать в WKT с помощью PHP. Есть идеи, какую функцию использовать? Кажется, я ничего не могу найти, потому что все примеры, которые я нахожу, основаны на функции MySQL AsText:-(

Author: preyz, 2014-05-08

1 answers

Результатом является внутренний формат столбца MySQL ( см. Руководство по извлечению значений ). Этот формат не является ни WKB (хорошо известный двоичный файл ), ни WKT (хорошо известный текст).

Я бы не ожидал, что какое-либо другое программное обеспечение сможет анализировать эти значения, тем более что MySQL предоставляет вспомогательные функции AsText и AsBinary, которые просты в использовании (если не использовать препятствующую структуру).

Вы можете создать представление, которое содержит AsText вывод столбца как самого столбца. Это поможет вам только при выборе, но, возможно, это все, что вам нужно.

 1
Author: GhostGambler, 2014-05-08 10:23:02