mysql point 修改_mysql point WKB格式 php 解析 unpack

SET @g = ST_GeomFromText('POINT(118.624653 31.919936)');

SELECT HEX(@g);

输出: 00000000 01 01000000 A435069D10B55D4026C5C72764FB3F40

Internal Geometry Storage Format

edd52659d47427c45b8405ec673bb50b.png

php 函数 unpack对应解析

var_dump(

unpack('H*', $l), // H 十六进位字符串,高位在前

unpack('ISRID/corder/Itype/dx/dy ', $l)

);

array(1) { [1]=> string(50) "000000000101000000e8f9d34675b55d40598b4f0130fa3f40" }

array(5) { ["SRID"]=> int(0) ["order"]=> int(1) ["type"]=> int(1) ["x"]=> float(118.624653) ["y "]=> float(31.919936) }

参数说明

'ISRID/corder/Itype/dx/dy'

ISRID:

"I" 无号整数 4个byte

"SRID" Spatial Reference System Identifier 空间参照标识符 0是二维平面

corder:

"c" byte 1个byte

"order" 1是little-endian编码 0是big-endian编码

Itype:

"I" 无号整数 4个byte

"type" Geometry types 如 0001:point 0003 polygon

dx:

"d"倍精确浮点数 8个byte

"x" x-coordinate

dy:

"d"倍精确浮点数 8个byte

"y" y-coordinate

更多请参见

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值