Discount systems, booking platforms, contests - all those applications have one thing in common: date & time management. How to implement business logic dependent on the time of the day, week, year? Half-price pizza on Mondays, course registration until the end of August or a landing page available only in November?
I deal with business requirements like these every day at work. I will show you the way I refactored messy code and wrote tests, so other programmers would not be afraid to make changes anymore. I'll convince you to use DateTimeImmutable and show some interesting date/time operations available in PHP standard library.