在CodeIgniter 4(或PHP)中使用坐标



我在CodeIgniter 4中编程,我不知道如何使用CodeIgniter 4或直接使用PHP处理以下问题。

我有一个数据库表places,其中一列coord与每个地方的位置(坐标),类型为point的MySQL列。多亏了CodeIgniter 4,我得到了所有的列,但是为了分别使用纬度和经度,我需要这样做:

select (*, st_x(coord) as lat, st_y(coord) as lon)
from ...

这样,我可以使用latlon。如果我只使用coord,我会得到一些没有意义的东西。

是否有一种方法可以做到以下其中一种:

  1. 工作与coord变量获得经度和纬度在PHP?
  2. 在MySQL表中添加一个函数,使选择(*)也返回lat和lon列(从st_x(coord)st_y(coord)计算)?

您可以为lat和lon添加虚拟生成的列-

ALTER TABLE places
ADD COLUMN lat DOUBLE GENERATED ALWAYS AS (ST_X(coord)) VIRTUAL,
ADD COLUMN lon DOUBLE GENERATED ALWAYS AS (ST_Y(coord)) VIRTUAL;

相关内容

  • 没有找到相关文章

最新更新