这是我的代码:
var_dump(strftime("%m-%d-%Y %l:%M:%S", time()));
echo "<br />";
var_dump(strftime("%Y-%d-%m %H:%M:%S", time()));
Run Code Online (Sandbox Code Playgroud)
第一行返回false,第三行返回预期的字符串'2012-10-09 23:03:18'(长度= 19)
为什么第一行返回false?
我正在运行Windows 7x64并使用相当默认的设置进行操作.
如果第一行不起作用但第二行不起作用,那么原因显然是因为 %l
var_dump(strftime("%l", time()));
Run Code Online (Sandbox Code Playgroud)
确实会在Windows上抛出错误.
阅读有关strftime的手册......
并非所有转换说明符都可能由C库支持,在这种情况下,PHP的strftime()不支持它们.此外,并非所有平台都支持负时间戳,因此您的日期范围可能不会早于Unix时代.这意味着%e,%T,%R和%D(以及可能的其他) - 以及1970年1月1日之前的日期 - 将无法在Windows,某些Linux发行版和其他一些操作系统上运行.对于Windows系统,可以在»MSDN上找到受支持的转换说明符的完整概述.
因此,%l不支持clealy.
| 归档时间: |
|
| 查看次数: |
4574 次 |
| 最近记录: |