Guest User

Untitled

a guest
May 23rd, 2018
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.96 KB | None | 0 0
  1. $start= "20:00";
  2. $end = "22:00";
  3. $int = 15;
  4.  
  5.  
  6. $int *= 60;
  7. $start = strtotime($start);
  8. $end = strtotime($end);
  9.  
  10. $range = range($start, $end, $int);
  11. $range = array_map(function ($val) { return date("H:i", $val); }, $range);
  12. Var_dump($range);
  13.  
  14. <?php
  15.  
  16. $begin = new DateTimeImmutable('19:00');
  17. $end = new DateTimeImmutable('24:30'); // Last 30 min will not be inclued (see output)
  18. $interval = new DateInterval('PT30M'); // Interval 30 min
  19.  
  20. $daterange = new DatePeriod($begin, $interval ,$end);
  21.  
  22. $ranges = [];
  23. foreach ($daterange as $key => $range) {
  24. $ranges[$key] = $range->format('H:i');
  25. if($key>0) {
  26. $ranges[$key-1] .= ' - '.$range->format('H:i');
  27. }
  28. }
  29. array_pop($ranges);
  30.  
  31. print_r($ranges);
  32.  
  33. Array
  34. (
  35. [0] => 19:00 - 19:30
  36. [1] => 19:30 - 20:00
  37. [2] => 20:00 - 20:30
  38. [3] => 20:30 - 21:00
  39. [4] => 21:00 - 21:30
  40. [5] => 21:30 - 22:00
  41. [6] => 22:00 - 22:30
  42. [7] => 22:30 - 23:00
  43. [8] => 23:00 - 23:30
  44. [9] => 23:30 - 00:00
  45. )
Add Comment
Please, Sign In to add comment