Дата инкрементная от определенной даты в php - PullRequest
0 голосов
/ 24 мая 2019

как непрерывно добавлять один месяц к определенной дате (например, непрерывный цикл),

см. Scenero ниже

given this $original_date is  30-7-2019   ,  echo 30-8-2019        //$original_date  + 1

when current date is > 30-8-2019 ,    echo 30-9-2019  i.e add one month to last
when current date is > 30-9-2019 ,    echo 30-10-2019 i.e add one month to last
when current date is > 30-10-2019 , echo 30-11-2019 i.e add one month to last
when current date is > 30-11-2019 , echo 30-12-2019 i.e add one month to last

и т. Д.

Я получил разницу между текущей датой и данной датой и всегда добавлял разницу к каждому текущему дню

$today = date('Y-m-d');
$given_date= date('2019-6-29');
//echo $date = date('Y-m-d', strtotime('+1 month', strtotime($given_date)));

//get month difference function
function getyearDiff($date){
            $today = new DateTime();
            $date = new DateTime($date);
            $interval = $date->diff($today);
            return $interval->format("%r%m");   
        }

//get month difference and remove negative if it exist
$diif =  abs(getyearDiff($filling_period)) ;
//echo $diif;

//add the difference
echo $date = date('Y-m-d', strtotime('+'.$diif.' month', strtotime($filling_period)));

всегда добавлять один месяц к ожидаемой дате от данной даты

1 Ответ

1 голос
/ 24 мая 2019

Демо-ссылка

Вот фрагмент кода, который вы можете попробовать

$today = new DateTime();
$given_date= new DateTime('2019-06-29');
$period = new DatePeriod( // create period instance between today and given date
     $today,
     new DateInterval('P1M'), // continously add one month difference
     $given_date
);
foreach( $period as $date) { 
   echo $date->format('Y-m-d').'<br/>'; 
}
print_r($array);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...