לא הכי יעיל, אבל עושה את העבודה בצורה פשוטה
PHP קוד:
<?php
$startTime = strtotime("8:30"); // אתה מגדיר זמן התחלה בפורמט יוניקס
$endTime = strtotime("17:45"); // כנ"ל לגבי זמן סיום
for($i=$startTime;$i<=$endTime;$i+=(45*60)) // אתה מריץ לולאה מהזמן התחלה עד שהאינדקס קטן או שווה לזמן סיום, ומעלה כל פעם ב-45 דקות (החישוב הוא בשניות)
{
echo date("H:i",$i).'<br />'; // מציג את השעה והדקות מהתאריך
}
?>