在使用Phpcms v9过程中,很多时候会碰到时间的调用,比如文章的发布时间、更新时间、会员注册时间、登录时间等,有时也会碰到1970-01-01或者时间戳转码的问题,今天CMSYOU在这里与大家分享Phpcms V9程序调用时间方法及PHP日期时间格式化详解。
首先,我们来了解下PHP里边的时间戳。
广义上讲,时间戳(timestamp),通常是一个字符序列,唯一地标识某一刻的时间。数字时间戳技术是数字签名技术一种变种的应用。
而PHP语言里边说的时间戳,是指Unix时间戳(Unix timestamp),或称Unix时间(Unix time)、POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。Unix时间戳不仅被使用在Unix系统、类Unix系统中(比如Linux系统),也在许多其他操作系统中被广泛采用。
Unix系统规定当前时间的timestamp等于1970年1月1日0点到当前时间之间的秒数,所以当timestamp=0的时候,时间就是1970年1月1日。
php中获取时间戳的方法是:
time(); Date();
现在我们具体说下Phpcms v9里边的时间戳和时间格式化调用:
一般我们是这样标准化调用日期时间:
{date('Y-m-d H:i:s', $r['inputtime'])}
其中$r是根据loop循环来的,输出为:2015-11-02 13:56:32,年月日+时间。
当然也可以具体根据需要调用,比如{date('Y',$rs[inputtime])}年、{date('m',$rs[inputtime])}月、{date('d',$rs[inputtime])}日。
具体说明:
{date('Y',$inputtime);} 4位年份 输出为:2013 或 2014
{date('y',$inputtime);} 2位年份 输出为:10 或 11
{date('F',$inputtime);} 英文月份全称 输出为:January 到 December
{date('M',$inputtime); } 英文月份缩写 输出为:Jan 到 Dec
{date('m',$inputtime);} 前导零数字月份 输出为:01 到 12
{date('n',$inputtime); } 数字月份 输出为:1 到 12
{date('d',$inputtime);} 前导零日期 输出为:01 到 31
{date('j',$inputtime);} 日期 输出为:1 到 31
{date('l',$inputtime);} 英文星期全称 输出为:Sunday 到 Saturday
{date('D',$inputtime);} 英文星期缩写 输出为:Mon 到 Sun
{date('N',$inputtime);} 格式数字星期 输出为:1 到 7
{date('Y-m-d H:i:s',$rs[inputtime]+30*60)} 在获取文章时间后加一段时间