Вы можете запустить perl cgi-script в терминале, используя следующую команду
$ perl filename.cgi
. Он интерпретирует код и предоставляет результат с кодом HTML. Он сообщит об ошибке, если таковой имеется.
Вы слишком усложняете логику. DateTime
объекты сравнимы, поэтому вы можете напрямую проверить, находится ли момент времени после / перед другим:
$timezone = new DateTimeZone( 'America/Toronto' );
$start = ( new DateTime( 'monday this week', $timezone ) )->setTime( 18, 0 );
$end = ( new DateTime( 'friday this week', $timezone ) )->setTime( 18, 0 );
$now = new DateTime( 'now', $timezone );
if ( $now > $start && $now < $end ) {
echo "Hello World";
}