代码拉取完成,页面将自动刷新
gtime.NewFromTimeStamp()
只能转10位。
希望提供13位时间戳转换方法。谢谢!
13位/1000 进行使用,以自己处理
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
@tianxia007 gtime.NewFromTimeStamp
支持到纳秒的时间戳,可以看看方法注释,示例:
package main
import (
"fmt"
"github.com/gogf/gf/os/gtime"
)
func main() {
ns := gtime.TimestampNano()
t := gtime.NewFromTimeStamp(ns)
fmt.Println(ns)
fmt.Println(t.String())
}
@John
http://api.m.taobao.com/rest/api3.do?api=mtop.common.getTimestamp
这个接口取到的时间戳没法转出日期格式
1579695307998
您可以试下
@tianxia007 可以啊:
package main
import (
"fmt"
"github.com/gogf/gf/os/gtime"
)
func main() {
t := gtime.NewFromTimeStamp(1579695307998)
fmt.Println(t.String())
}
输出结果:
2020-01-22 20:15:07
@John 收到!多谢!
@John 大佬有空试下这个例子,为什么返回的13位的时间戳,用int64装换不到对象里,是0.也不报错。
package main
import (
"fmt"
"github.com/gogf/gf/encoding/gjson"
"github.com/gogf/gf/net/ghttp"
"github.com/golang/glog"
"time"
)
func main() {
content := ghttp.GetContent("http://api.m.taobao.com/rest/api3.do?api=mtop.common.getTimestamp")
taobaoTime := new(TaobaoTime)
err := gjson.DecodeTo(content, &taobaoTime)
if err != nil {
glog.Error(err)
}
timestamptemp := (taobaoTime.Data.T)
glog.Info(timestamptemp)
re := gtime.NewFromTimeStamp(timestamptemp).String()
glog.Info(re)
}
type TimeStamp struct {
T int64 `json:t`//用string就可以正常解析
}
type TaobaoTime struct {
Api string `json:api`
V string `json:v`
ret string `json:ret`
Data TimeStamp `json:data`
}
@tianxia007 gjson.DecodeTo
方法其实用的是标准库的json.Unmarshal
方法,功能比较有限,你可以参考以下代码,不过你可能得更新到最新的master
分支:
package main
import (
"github.com/gogf/gf/net/ghttp"
"github.com/gogf/gf/os/glog"
"github.com/gogf/gf/util/gconv"
)
type TimeStamp struct {
T int64 `json:t` //用string就可以正常解析
}
type TaobaoTime struct {
Api string `json:api`
V string `json:v`
Ret []interface{} `json:ret`
Data TimeStamp `json:data`
}
func main() {
content := ghttp.GetContent("http://api.m.taobao.com/rest/api3.do?api=mtop.common.getTimestamp")
taobaoTime := new(TaobaoTime)
if err := gconv.Struct(content, taobaoTime); err != nil {
panic(err)
}
glog.Info(taobaoTime.Data.T)
}
登录 后才可以发表评论