Mktime函数没有显示正确的月份名称



你们所有人都请尝试理解{segment_4}不是一个变量。从URL获取第4个值,例如www.example.com/panel/vals/2015/09,即09

我在表达式引擎中使用mktime函数,但它给出了不正确的月份名称,即使我已经设置了从管理面板到印度加尔各答的本地化设置,这里是代码:-

<?php echo date('F', mktime(0, 0, 0, {segment_4}, 10));?> 

这里的segment_4是数字eg的月份。09但它显示十二月它应该是九月我到处研究它说函数是正确的,我必须在表达式引擎中设置其他任何东西?

当我使用这段代码时还有一件事:-

echo date_default_timezone_get();

然后显示欧洲/伦敦即使我把印度/加尔各答的时区改变了

Thanks in advance

好的,你有一个'09',它被解释为八进制9,这是一个错误,(因为符号'9'不存在八进制),因此它被转换为0。mktime将其解释为12月。来自@fpietka的评论

我建议使用

<?php echo date('F', mktime(0, 0, 0, ltrim($segment_4, "0"), 10));?> 

最新更新