cornernote/yii-extended-date-time-formatting-behavior

此包的最新版本(dev-master)没有可用的许可信息。

[Yii] CDateFormater 行为,增加了扩展日期和时间的格式化方法。

dev-master 2014-07-26 03:24 UTC

This package is auto-updated.

Last update: 2024-09-19 18:42:21 UTC


README

ExtendedDateTimeFormattingBehaviorCDateFormatter 组件添加了一些扩展日期和时间格式化的方法。

可用的格式化器

  • formatDateTimeReadable($timestamp, $dateWidth = 'medium', $timeWidth = 'medium') 使用模式 (今天|昨天|<日期>), <时间> 格式化日期和时间。
  • $dateWidth 被传递给 CDateFormatter::formatDateTime() 以格式化 <日期>
  • $timeWidth 被传递给 CDateFormatter::formatDateTime() 以格式化 <时间>
  • formatDateTimeInterval($timestamp, $precisely = false) 使用模式 <度量值> <度量> 之前 或更复杂的 <第一个度量值> <第一个度量> 和 <第二个度量值> <第二个度量> 之前 格式化日期和时间。
  • $precisely 被设置为 true,则间隔将由两个度量值组成。

两种格式化器中的 $timestamp 可以是 Unix 时间戳(整数)或字符串,以传递给 strtotime()

使用方法:将此行为附加到您的 dateFormatter 实例。

例如,在您的基控制器类(Controller)和基控制台命令类(ConsoleCommand)中添加此内容

    public function init()
    {
        parent::init();
        Yii::app()->dateFormatter->attachBehavior('ExtendedDateTimeFormatting', 'ext.ExtendedDateTimeFormattingBehavior.ExtendedDateTimeFormattingBehavior');
    }

示例

echo Yii::app()->dateFormatter->formatDateTimeReadable('yesterday, 20:45:17');

返回 昨天,8:45:17 PM20

echo Yii::app()->dateFormatter->formatDateTimeInterval('yesterday, 20:45:17', true);

返回 20小时54分钟之前