pjkober/datetimeintervalbundle

Symfony PJKoberDateTimeIntervalBundle

安装: 15

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 0

分支: 1

开放问题: 1

类型:symfony-bundle

v0.5.17 2017-04-12 13:29 UTC

This package is not auto-updated.

Last update: 2024-09-20 19:30:05 UTC


README

PHP 和 TWIG 函数与过滤器,用于将日期区间转换为数字:秒数、分钟、小时、天数。在 TWIG 中的示例用法:{{ your_date |days }} 如果 your_date = yesterday,则结果是 -1。

Latest Version Build Status

安装 & 配置

通过 Composer 安装

composer require pjkober/datetimeintervalbundle

配置

注册包

<?php
// app/AppKernel.php
public function registerBundles()
{
    $bundles = array(
        // ...
        new pjkober\datetimeintervalbundle\EinsteDateTimeIntervalBundle(),
    );
    // ...
}

启用服务组件配置

# app/config/services.yml
services:
   date_time_interval_twig_extension:
            class: pjkober\datetimeintervalbundle\Twig\TwigFunctionExtension
            public: false
            tags:
                - { name: twig.extension }

使用方法

在 PHP 中!

<?php
// Use the functions with PHP
echo $view['time']->dateToDays($dateTime); 
// returns something like "10" or "-10", count days interval between $dateTime and now

echo $view['time']->dateToDays($dateTime1, $dateTime1); 
// count days interval between $dateTime1 and  $dateTime2

echo $view['time']->dateToHours($dateTime); 
// returns something like "24" or "-36", count interval between $dateTime and now
echo $view['time']->dateToHours($dateTime1, $dateTime1); 
// count hours interval between $dateTime1 and  $dateTime2

echo $view['time']->dateToMinutes($dateTime); 
// returns something like "1140" or "-1140" minutunt interval between $dateTime and now
echo $view['time']->dateToMinutes($dateTime1, $dateTime1); 
// count minutes interval between $dateTime1 and  $dateTime2

echo $view['time']->dateToSeconds($dateTime); 
// returns something like "1140" or "-1140", count interval between $dateTime and now
echo $view['time']-> dateToSeconds($dateTime1, $dateTime1); 
// count Seconds interval between $dateTime1 and  $dateTime2

在 Twig 中!

{{ someDateTime |days }}
{{ someDateTime |hours }}
{{ someDateTime |minutes }}
{{ someDateTime |ceconds }}


//... or use the equivalent function. Secound date is now
{{ dateToDays( date() | date_modify("-1 day")) }}   = 1 
{{ dateToHours( date() | date_modify("-1 day")) }}  = 24
{{ dateToMinutes( date() | date_modify("-1 day")) }}  = 1140
{{ dateToSeconds( date() | date_modify("-1 day")) }}  = 86400

//... or put two dates
 {{ dateToDays( fromDate ,  toDate ) }}
{{ dateToDays( fromDateTime ,  toDateTime ) }}
{{ dateToHours( fromDate ,  toDate ) }}
{{ dateToHours( fromDateTime ,  toDateTime ) }}
{{ dateToMinutes( fromDate ,  toDate ) }}
{{ dateToMinutes( fromDateTime ,  toDateTime ) }}
{{ dateToSeconds( fromDate ,  toDate ) }}
{{ dateToSeconds( fromDateTime ,  toDateTime ) }}

测试 [x]

如果您想运行测试,请确保您已安装开发依赖项。

./vendor/bin/simple-phpunit

许可协议

MIT 许可协议(MIT)。有关更多信息,请参阅许可文件