pjkober/datetimeintervalbundle

Symfony PJKoberDateTimeIntervalBundle

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

This package is not auto-updated.

Last update: 2024-04-19 17:26:39 UTC


README

PHP and TWIG functions & filters to convert dates interval to number: secounds, minutes, hours, days. Example usage in TWIG: {{ your_date |days }} if your_date = yesterday the result is -1.

Latest Version Build Status

INSTALLATION & CONFIGURATION

INSTALLATION via Composer

composer require pjkober/datetimeintervalbundle

CONFIGURATION

Register the bundle:

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

Enable the Service component configuration:

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

USAGE

In 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

In 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 ) }}

TESTS [x]

If you want to run tests, please check that you have installed dev dependencies.

./vendor/bin/simple-phpunit

License

The MIT License (MIT). Please see License File for more information.