03,03 will not be the same as 24,24. There will be 59 minutes where two matching times, such as 03,03 will return "open". You can "see" how this works:
Monday hours (above) are 10 AM to 10 AM (10 to 10).
We check time (below) and the hour is 10.
Now check to see if we are in the open/closed range:
it will look like this:
which translates to:
which is true because 10 is "equal" to 10 on both sides of the "and" operator. So for 59 minutes and 59 seconds the hours of 10,10 will display as "open". I used 24,24 because the return value of "localtime" will never be 24. So one side or the other of the line that checks the time range will always be false and "open" will never be returned. I hope that makes sense.