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

问题描述 投票:0回答:2

我有一个使用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,...

php yii
2个回答
1
投票

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


0
投票

在Yii 2:

© www.soinside.com 2019 - 2024. All rights reserved.