3v4l.org

run code in 300+ PHP versions simultaneously
<?php $month_start = new DateTime("first day of this month"); $month_end = new DateTime("last day of this month"); // find the monday on/before the start of the month $start_date = clone $month_start; $start_date->modify((1 - $start_date->format('N')) . ' days'); while ($start_date <= $month_end) { echo max($month_start, $start_date)->format('Y-m-d') . ' to ' . min($start_date->modify('+6 days'), $month_end)->format('Y-m-d') . "\n"; $start_date->modify('+1 day'); }
Output for 7.2.0 - 7.2.34, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.4, 8.3.6
2023-06-01 to 2023-06-04 2023-06-05 to 2023-06-11 2023-06-12 to 2023-06-18 2023-06-19 to 2023-06-25 2023-06-26 to 2023-06-30
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 2023-06-01 to 2023-06-04 2023-06-05 to 2023-06-11 2023-06-12 to 2023-06-18 2023-06-19 to 2023-06-25 2023-06-26 to 2023-06-30

preferences:
188.95 ms | 402 KiB | 191 Q