1. 论坛系统升级为Xenforo,欢迎大家测试!
    排除公告

如何在DEDECMS模板中把时间戳转换成普通的时间格式

本帖由 feeloon2012-11-02 发布。版面名称:源码讨论

  1. feeloon

    feeloon New Member

    注册:
    2012-10-23
    帖子:
    32
    赞:
    0
    什么是时间戳?很多刚接触dedecms建站的站长,对这个概念不是很清楚。无忧主机(51php.com)小编先给大家介绍一下概念。时间戳就是从 1970 年 1 月 1 日(00:00:00 GMT)以来的秒数,也就是1970年01月01日00时00分00秒起至现在的总秒数,这个时间戳在php虚拟主机建站中经常用到的。这是一个基础概念。

    这个时间戳和我们dedecms模板制作过程中有什么关联类?我们在防dedecms摸板中经常会要把模板板首页(index.htm)、模板列表(list.htm)页或者文档页我们都需要把文档发布时间(字段:pubdate)调出来,但我们调取出来的时间只是一串数字也就是时间戳,并不是我们想要的普通的时间格式。那么我们拿到一串时间戳,应该怎么样把它转换成我们想要的标准时间格式呢?这里就需要用到dede模板中的function函数扩展,写一个简单的小函数,把时间格式化,输入我们日常所见到的时间格式。下面为了方便大家,无忧主机(51php.com)小编,写了一个例子,方便大家理解:

    使用field标签把时间戳调取出来,关于field标签的应用,你可以参考“DEDECMS模板制作基础:内容页之field标签”一文已做详细介绍。我在dede模板文档页模板中添加以下代码:
    1 {dede:field.pubdate function="MyDate('Y-m-d H:i',@me)"/}

    下面简单介绍下这段代码的意思,前面的标签就不做介绍了,很简单。重点要和大家讲解一下function函数,第一个参数是时间的格式:Y-m-d H:i 输出就是 2012-8-9 18:20这种格式,这里一定要注意大小写,Y是大写的,如果写成小写的格式就是这样了12-8-9 18:20了,所以我们一定要注意大小写是有区别的,如果你还想把时间再精确一点,还可以在后面加上s 也就是’Y-m-d H:i:s’。输出的格式就是2012-8-9 18:20:14 ,具体的还要根据模板的设计要求来做。你是否已经掌握了dede模板时间戳的应用技巧了?