Zend framework 如何使用Zend_date打印区域设置感知的日期?

Zend framework 如何使用Zend_date打印区域设置感知的日期?,zend-framework,date,Zend Framework,Date,我想使用Zend_Date以字符串形式打印前两个月和前一年,例如: 2009年7月 2009年6月 我需要它能够识别语言环境,这样如果代码运行时语言环境设置为德语,那么月份名称将以德语打印 $date = new Zend_Date(); $date->subMonth(1); echo $date->get(Zend_date::MONTH_NAME).' '.$date->get(Zend_Date::YEAR); $date->subMo

我想使用Zend_Date以字符串形式打印前两个月和前一年,例如:

2009年7月 2009年6月

我需要它能够识别语言环境,这样如果代码运行时语言环境设置为德语,那么月份名称将以德语打印

  $date = new Zend_Date();
    $date->subMonth(1);
    echo $date->get(Zend_date::MONTH_NAME).' '.$date->get(Zend_Date::YEAR);
    $date->subMonth(1);
    echo $date->get(Zend_date::MONTH_NAME).' '.$date->get(Zend_Date::YEAR);
这就是我需要做的吗


谢谢

在创建Zend_日期对象时指定区域设置。像这样:

$date = new Zend_Date(new Zend_Locale('de_AT'));
$date->subMonth(1);
echo $date->get(Zend_date::MONTH_NAME).' '.$date->get(Zend_Date::YEAR);
$date->subMonth(1);
echo $date->get(Zend_date::MONTH_NAME).' '.$date->get(Zend_Date::YEAR);

您可以在get方法中使用可选的locale参数:

$date = new Zend_Date();
echo $date->get(Zend_Date::MONTH_NAME,'de_DE');
echo $date->get(Zend_Date::MONTH_NAME,'en_UK');