Perl中的POSIX函数strftime()

您可以在Perl中使用POSIX函数strftime()来格式化下表中的日期和时间。请注意,标有星号(*)的说明符与语言环境有关。

说明符取而代之
%一种工作日缩写名称*周四
%一种工作日全名*星期四
%b月份缩写名称*八月
%B月份全名*八月
%C日期和时间表示*2001年8月23日星期四14:55:02
%C一年除以100,并截断为整数(00-99)20
%d每月的某天,零填充(01-31)23
%DMM / DD / YY的短日期,相当于%m /%d /%y08/23/01
%e每月的某天,以空格填充(1-31)23
%F短短的YYYY-MM-DD日期,相当于%Y-%m-%d2001-08-23
%G以周为基础的年份,后两位数字(00-99)01
%G基于周的年份2001
%H缩写的月份名称*(与%b相同)八月
%H24小时格式的一小时(00-23)14
%一世12小时格式的一小时(01-12)02
%j一年中的哪一天(001-366)235
%m以十进制数表示的月份(01-12)08
%M分钟(00-59)55
%n换行符('\ n')
%pAM或PM指定下午
%r12小时制*下午02:55:02
%R24小时HH:MM时间,相当于%H:%M14:55
%S第二次(00-61)02
%t水平制表符('\ t')
%TISO 8601时间格式(HH:MM:SS),等效于%H:%M:%S14:55
%uISO 8601工作日为数字,星期一为1(1-7)4
%U以第一个星期日为第一个星期的第一天的星期数(00-53)33
%VISO 8601周编号(00-53)34
%w工作日为小数,星期日为0(0-6)4
%W第一个星期一为第一个星期的第一天的星期数(00-53)34
%X日期表示*08/23/01
%X时间表示*14:55:02
%y年,最后两位数(00-99)01
%Y2001
%zISO 8601与时区UTC的偏移量(1分钟= 1,1小时= 100)如果无法终止时区,则没有字符+100
%Z时区名称或缩写*如果无法终止时区,则没有字符CDT
%%一个牌子

让我们检查以下示例以了解用法-

示例

#!/usr/local/bin/perl
use POSIX qw(strftime);
$datestring = strftime "%a %b %e %H:%M:%S %Y", localtime;
printf("date and time - $datestring\n");
# or for GMT formatted appropriately for your locale:
$datestring = strftime "%a %b %e %H:%M:%S %Y", gmtime;
printf("date and time - $datestring\n");

输出结果

执行以上代码后,将产生以下结果-

date and time - Sat Feb 16 07:10:23 2013
date and time - Sat Feb 16 14:10:23 2013