<?php

$today = new DateTime();

$updatetime = '19/01/2021'; // $table['renew']; //19/01/2021
$updatetype = 'weekly'; //$table['type']; //daily || weekly || monthly
  
$updatetime = (new DateTime())->createFromFormat('d/m/Y', '19/01/2021');

// what I've done for weekly and seems to be working
 if($updatetime < $today){
    //$updatetime = $today; // reset to today
    $updatetime->modify('next week'); // add one week
 } else {
    return;
 }
 
echo 'Next time of weekly update '. $updatetime->format('Y-m-d') . PHP_EOL . PHP_EOL;

 
echo 'Other examples of date manipulation using relative formats:'. PHP_EOL;
 $today = '2022-02-28';

$t = new DateTime($today);

// print the source date time
echo $t->format('Y-m-d') . PHP_EOL;

// examples of continuously manipulate the date time origin
echo $t->modify('next week')->format('Y-m-d') . PHP_EOL;
echo $t->modify('next month')->format('Y-m-d') . PHP_EOL;
echo $t->modify('next year')->format('Y-m-d') . PHP_EOL;
echo $t->modify('next sunday')->format('Y-m-d') . PHP_EOL;

