strftime():bool(false)没有显示任何内容


strftime() : bool(false) not showing nothing

我想在我的页面上显示当前日期,格式为:2013年2月22日-12:00(天/月/年-小时)

我使用strftime("%d/%b/%G - %R", time()),但页面上没有显示任何内容。如果我做

echo var_dump(strftime("%d/%b/%G - %R", time()))

它显示bool(false)。知道我做错了什么吗??

Windows不支持%G%R,您应该分别使用%Y%H:%M

strftime("%d/%b/%Y - %H:%M")

来自strftime()文档:

由于输出依赖于底层的C库,因此不支持某些转换说明符。在Windows上,提供未知的转换说明符将导致5条E_WARNING消息,并返回FALSE。在其他操作系统上,您可能不会收到任何E_WARNING消息,并且输出可能包含未转换的转换说明符。

因此,您可能使用了不受支持的格式参数。

注意:默认情况下,time()用于时间戳,因此如果您需要此默认tiemsamp,则可以将strftime()与它一起使用。

试试这个:

echo date('d/m/Y - H:s');

如果你需要,你可以这样设置时区:

date_default_timezone_set('UTC');