Welcome Guest, Not a member yet? Register   Sign In
How to get date an interval of Date using the Time class?
#1

Hi, I would like to use the Time class provided by CodeIgniter to easily translate the name through the "toLocalizedString" method.
Unfortunately, I didn't found any method that allow me to create a period of dates, could someone tell me how can I replicate this code using the Time class?

PHP Code:
$period = new DatePeriod(
     new 
DateTime('2010-10-01'),
     new 
DateInterval('P1D'),
     new 
DateTime('2010-10-05')
); 

Thanks
Reply
#2

You would need to extend the Time class and add the method you need to it.
What did you Try? What did you Get? What did you Expect?

Joined CodeIgniter Community 2009.  ( Skype: insitfx )
Reply
#3

(10-25-2021, 12:42 AM)InsiteFX Wrote: You would need to extend the Time class and add the method you need to it.

Hi, I wrote a small helper, hope to help:

PHP Code:
<?php

use CodeIgniter\I18n\Time;

if (!
function_exists('getDateInterval')) {
    /**
    * Ottiene un intervallo di date
    * 
    * @param int days
    * 
    * @return array
    */
    function getDateInterval(int $days)
    {
        $period = new DatePeriod(
            new DateTime("now"),
            new DateInterval("P1D"),
            new DateTime("now +${days} day")
        );

        $results = [];

        foreach ($period as $p) {
            $results[] = Time::createFromInstance($p);
        }

        return $results;
    }

Reply




Theme © iAndrew 2016 - Forum software by © MyBB