Во-вторых - забей на этот древний предрассудок и пользуйся буферами вывода. ob_start() в начале кода и...и вообще плевать, что в каком порядке ты пишешь. Передано все будет в правильном.
По факту, в реальном мире все это делается проще. Если пользователь передает данные через форму, то мы их получим в виде строки, из которой в дальнейшем нужно будет извлечь минуты, инными словами тут нам уже понадобятся функции для разбора строк. В таком случае еще необходимо будет сделать проверку на формат времени, т. е. 1:30 или 01:30, кто то может и через пробел / дефис указать число (это можно сделать через preg_match - в примере не реализовал), если время не выбирается явно из выпадающего списка. PHP: function streetLight(string $time) { $minutes = (int) mb_strimwidth($time, 3, 2); $designator = $minutes % 5; if ($designator >= 0 && $designator < 3) { $color = 'Green'; } else { $color = 'Red'; } return $color; } $color = streetLight('12:22'); echo $color;