【问题标题】:Yii: how to format a mysql datestamp according to locale?Yii:如何根据语言环境格式化 mysql 日期戳?
【发布时间】:2012-09-24 13:32:33
【问题描述】:

我在 Yii 的第一天

我刚刚学会了如何过滤列

$dataProvider=new CActiveDataProvider('User', 
            array(
                'criteria' => array(
                                'select' => 'id, username, realname, email, companyId, languageId, registrationDate',
                                'order' => 'username ASC',
                                )
                 )
    );
    $this->render('index',array(
        'dataProvider'=>$dataProvider,
    ));

现在我有一个问题:“registrationdDate”是一个 MySql 日期戳。

所以我需要显示本地化...我该怎么做?

视图的代码是一个列表。我正在使用这个列表:

<td><?php echo CHtml::encode($data->registrationDate); ?></td>

如何检测用户区域设置?例如,如何将“2012-10-13 13:33:45”格式化为正确的本地化字符串?

对于意大利语,它将是 13/10/2012 或 13-10-2012 附加 13:33:45

【问题讨论】:

标签: formatting yii datestamp


【解决方案1】:

最简单的方法是:

<td>
        <?php echo Yii::app()->locale->dateFormatter
                  ->formatDateTime($data->registrationDate); ?>
</td>

【讨论】:

  • 这不能自动本地化日期格式。我知道 Yii 知道该语言用户正在使用,并且我读到这是一种使用原生 Yii 方法来格式化日期的方法......还是不?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-22
  • 2018-09-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多