mpratt/relativetime

这是一个库,用于计算两个日期之间的时间差,并以文字形式返回结果(例如:5分钟前或5分钟剩余)。该库还支持其他语言,如西班牙语和德语。

1.5.13 2023-06-03 02:15 UTC

This package is auto-updated.

Last update: 2024-09-07 02:38:03 UTC


README

Build Status Total Downloads Monthly Downloads Latest Stable Version

Support via PayPal

RelativeTime是一个轻量级且易于使用的库,可以帮助您计算两个日期之间的时间差,并以文字形式返回结果(例如,5分钟前或5分钟剩余)。该库还支持其他语言,如西班牙语葡萄牙语BR法语捷克语俄语简体中文瑞典语德语

它使用现代PHP版本中找到的标准\DateTime()和\DateInterval()类。有关更多信息,请参阅此README的用法部分。

需求

  • PHP >= 5.3(仅在PHP +7.3上进行测试)

安装

使用Composer安装

如果您使用Composer来管理依赖项,可以通过创建一个composer.json文件并添加以下内容来使用此库:

{
    "require": {
        "mpratt/relativetime": "~1.0"
    }
}

保存并运行composer.phar install

独立安装(不使用Composer)

下载最新版本或克隆此存储库,将Lib/RelativeTime目录放置在您的项目中的某个位置。之后,您只需要包含提供的Autoload.php文件。

    require '/path/to/RelativeTime/Autoload.php';

    use RelativeTime\RelativeTime;

    $relativeTime = new RelativeTime();

或者如果您已经有了PSR-0兼容的自动加载器,只需注册RelativeTime即可

    $loader->registerNamespace('RelativeTime', 'path/to/RelativeTime');

用法

您通常需要使用convert($fromDate, $toDate)方法。

    use RelativeTime\RelativeTime;

    $relativeTime = new RelativeTime();
    echo $relativeTime->convert('2010-09-05', '2010-03-30');
    // 5 months, 6 days ago

    $relativeTime = new RelativeTime();
    echo $relativeTime->convert('2012-03-05', '2013/02/05');
    // 11 months left

还有另外两个有用的方法timeAgo($date)timeLeft($date),它们计算自/至当前日期/时间的时间。

    use RelativeTime\RelativeTime;

    // Asumming Today is the 2013-09-23 17:23:47


    $relativeTime = new RelativeTime();
    echo $relativeTime->timeAgo('2012-08-29 06:00');
    // 1 year, 25 days, 16 hours, 23 minutes, 13 seconds ago

    $relativeTime = new RelativeTime();
    echo $relativeTime->timeLeft('2013-10-31 01:00:05');
    // 1 month, 7 days, 2 hours, 36 minutes, 52 seconds left

配置选项

主要对象接受一个包含配置指令的数组

    use RelativeTime\RelativeTime;

    $config = array(
        'language' => '\RelativeTime\Languages\English',
        'separator' => ', ',
        'suffix' => true,
        'truncate' => 0,
        'use_weeks' => false,
    );

    $relativeTime = new RelativeTime($config);

作者

Michael Pratt - yo@michael-pratt.com - http://www.michael-pratt.com 有关参与此项目的贡献者列表。

如果您喜欢这个库,并且它对您有所帮助,并且想支持我,您可以通过PayPal来支持。

Support via PayPal

许可

RelativeTime在MIT许可下发布 - 有关详细信息,请参阅LICENSE文件。