Я должен проверить, четный ли сегодня день в месяце.
Пример Cronjob будет «* * * / 2 * *» из CrontabGuru
Но я не знаю, как это проверить в PHP с помощью углерода.
$date = Carbon::now();
Думаю, мне нужно проверить дни месяца с текущим днем примерно так
($date->daysInMonth / $date->day) % 2
Попробуйте что-то вроде этого:
$evenDays = [ 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30 ]; if (in_array($date->day, $evenDays)) { // Day is even }
20% 2 == 0 (четный)
15% 2 == 1 (нечетный)
if (!empty(($date->day % 2))) { // is odd } if (empty(($date->day % 2))) { // is even }
или пример использования метода:
public function isEvenDay() { return boolval($date->day % 2) === false; } public function isOddDay() { return boolval($date->day % 2); }