1*c3437056SNickeau<?php 2*c3437056SNickeau 3*c3437056SNickeau 4*c3437056SNickeaunamespace ComboStrap; 5*c3437056SNickeau 6*c3437056SNickeau 7*c3437056SNickeauuse Cron\CronExpression; 8*c3437056SNickeau 9*c3437056SNickeauclass Cron 10*c3437056SNickeau{ 11*c3437056SNickeau 12*c3437056SNickeau 13*c3437056SNickeau /** 14*c3437056SNickeau * @throws ExceptionCombo 15*c3437056SNickeau */ 16*c3437056SNickeau public static function getDate(string $cronExpression): \DateTime 17*c3437056SNickeau { 18*c3437056SNickeau try { 19*c3437056SNickeau $cron = CronExpression::factory($cronExpression); 20*c3437056SNickeau return $cron->getNextRunDate(); 21*c3437056SNickeau } catch (\InvalidArgumentException $e) { 22*c3437056SNickeau throw new ExceptionCombo("The cache frequency expression ($cronExpression) is not a valid cron expression. <a href=\"https://crontab.guru/\">Validate it on this website</a>"); 23*c3437056SNickeau } 24*c3437056SNickeau } 25*c3437056SNickeau} 26