我如何用具有实际月份名称的区域设置首选日期格式来格式化日期?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我如何用具有实际月份名称的区域设置首选日期格式来格式化日期?相关的知识,希望对你有一定的参考价值。

我有一个使用Yii的项目,该项目旨在支持多种语言。使用setlocale,我可以执行以下操作:

setlocale(LC_TIME, 'en_US', 'English');
echo strftime('%x', mktime(0, 0, 0, 12, 25, 2014));

// outputs '12/25/2014'


setlocale(LC_TIME, 'fr_FR', 'French_France')
echo strftime('%x', mktime(0, 0, 0, 12, 25, 2014));

// outputs '25/12/2014'

这几乎是我所需要的,但是,我想以首选格式而不是数字打印出月份的实际名称。例如,对于美国英语,我希望它输出:

2014年12月25日

对于法语,我想输出:

2014年12月25日]

这必须使用特定于该语言环境的格式设置规则,为提供的语言环境(多个国家/地区)起作用,法国的法语和英语只是示例。有没有一种类似的“自动”方式用Yii或只是php?还是我需要保存一个格式化字符串以及语言环境(不是我的优先选项)

我有一个使用Yii的项目,该项目旨在支持多种语言。使用setlocale,我可以执行以下操作:setlocale(LC_TIME,'en_US','English'); echo strftime('%x',mktime(0,0,0,12,12,25,...

答案

Yii的应用程序对象具有dateFormatter属性,该属性使您可以访问dateFormatter对象;您可以根据应用程序的CDateFormatter将此对象用于CDateFormatter

另一答案

在Yii 2:

以上是关于我如何用具有实际月份名称的区域设置首选日期格式来格式化日期?的主要内容,如果未能解决你的问题,请参考以下文章

Android - 显示不同日期格式的月份名称

Bootstrap Datepicker - 动态更改格式 - 设置月份名称获取月份值

如何从R中具有月份名称的时间戳中提取日期

根据区域设置格式化部分日期

jekyll 中的区域设置特定日期

如何从给定日期获得一个月的整数并打印为月份名称格式(“MMM”)