月明楼和大黑楼

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2778|回复: 0

关于ecshop的下订单时间

[复制链接]

主题

帖子

0

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
0
发表于 2015-9-9 14:35:13 | 显示全部楼层 |阅读模式
1.ecshop存储的订单下达时间

ecshop在订单下达时,使用add_time存储下单时间,add_time=gm_time().而gm_time()是一个自定义函数,其值gm_time()=time()-date('Z');就是说其时间值减去了一个差值date('Z')。该差值表示ecshop的时区与utc时区的差,以秒计算。东8区为正值,西8区为负值。而ecshop的时区,则定义在data/config.php里的timezone字段,一般是PRC。所以date()函数的时区以ecshop的时区为准,同时与php.ini中的时区无关。
所以,订单的下达时间,是按照ecshop的时区解释的,减去了一个时区差的值。

这样,exe应用程序设计时,提交的查询时间,也应该减去一个差值。该差值是exe程序所在的本地计算机时区与UTC/GMT时区的差值,才是符合ecshop时间逻辑的时间值。

2.ecshop后台显示的订单下达时间
ecshop后台的订单下达时间,来源于add_time字段,使用local_date($format, $time=NULL)函数进行了转换。在local_date()函数中,$time被加上了一个时区差值,以秒计算。时区差值既是1中所述的与UTC的差值。
这样,exe应用程序取回add_time的值以后,需要再次查询ecshop增加的时区差值,这样才能与ecshop后台显示的时间完全一样。该时间差值就是shop_config表的timezone字段存储的值,一般为8.

据此2条修正anycellreport.exe的订单打印程序。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|月明楼一站式批发配送  

GMT+8, 2018-5-21 19:04 , Processed in 0.104204 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表