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

时间:2013-02-22 13:28:31

标签: php strftime

我想在我的页面上以这种格式显示当前日期:22/02/2013 - 12:00(日/月/年 - 小时)

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

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

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

3 个答案:

答案 0 :(得分:7)

Windows doesn't support %G or %R,您应分别使用%Y%H:%M

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

答案 1 :(得分:6)

来自strftime() documentation

  

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

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

注意:默认情况下,time()用于时间戳,因此如果您需要此默认tiemstamp,则可以使用strftime()

答案 2 :(得分:0)

试试这个:

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

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

date_default_timezone_set('UTC');