Но после мне понадобилось временно отключить задачуЭто решается комментированием строки, а не сменой времени.
Но в прошедшее воскресенье, 15 февраля, скрипт заработал. Что это? Это получается если в месяце 29 числа нет, то вместо дня как бы подставляется знак * ? И получается выполнение каждое воскресенье февраля?
Все условия (времени запуска) проверяются по "логическому И", кроме условий "день недели" и "день месяца" — указанные совместно, они обрабатываются по "логическому ИЛИ", то есть "по любому из дней", что отражено в man-странице (Ubuntu, Debian, FreeBSD). Однако, такая логика неочевидна и не позволяет создать условие типа "первый понедельник каждого месяца" или "каждую пятницу в 13 число". Разработчики не изменяют данное поведение, считая его стандартом
$t
- это объект, и вместо $t['category']
нужно использовать $t->category