1

「場所」列 (「旅」テーブルの POINT データ型) でこれを実行すると、予期しない数値形式が返されるようです (PHP / Codeigniter):

$this->db->select('X(location)');
$query = $this->db->get('journeys');

たとえば、51.5...

「場所」の値は次のように挿入されます。

$this->db->set('location','geomfromtext("POINT(lat lng)")',false);

単純な数値の書式設定の問題だと確信していますが、困惑しています。

4

1 に答える 1

0

データポイントを入力している行で:

$this->db->set('location','geomfromtext("POINT(lat lng)")',false);

使用しているコードを正確に示しているわけではないと思いますが、次のようになります。

$this->db->set('location','geomfromtext("POINT('.$lat.' '.$lng.')")',false);

おそらく、必要な精度に応じて、入力を適切にフォーマットする必要があります。多分このように:

$this->db->set('location','geomfromtext("POINT('.number_format($lat,6,'.','').' '.number_format($lng,6,'.','').')")',false);
于 2013-09-03T02:34:13.470 に答える