3v4l.org

run code in 300+ PHP versions simultaneously
<?php $_POST['s1'] = '16.15'; $_POST['s2'] = '23.30'; $wagesLookup = [ '18:00' => 146 / 4, // morning '22:00' => 204 / 4, // evening '24:00' => 244 / 4 // night ]; $period = new DatePeriod( DateTime::createFromFormat('H.i', $_POST['s1']), new DateInterval('PT15M'), DateTime::createFromFormat('H.i:01', "{$_POST['s2']}:01") // bump ahead to make "inclusive" ); $total = 0; foreach ($period as $dt) { $time = $dt->format('H:i'); foreach ($wagesLookup as $mark => $pay) { if ($time <= $mark) { break; } } printf("%s earned %.02f\n", $dt->format('H:i'), $pay); $total += $pay; } echo "Total: $total";
Output for git.master, git.master_jit, rfc.property-hooks
16:15 earned 36.50 16:30 earned 36.50 16:45 earned 36.50 17:00 earned 36.50 17:15 earned 36.50 17:30 earned 36.50 17:45 earned 36.50 18:00 earned 36.50 18:15 earned 51.00 18:30 earned 51.00 18:45 earned 51.00 19:00 earned 51.00 19:15 earned 51.00 19:30 earned 51.00 19:45 earned 51.00 20:00 earned 51.00 20:15 earned 51.00 20:30 earned 51.00 20:45 earned 51.00 21:00 earned 51.00 21:15 earned 51.00 21:30 earned 51.00 21:45 earned 51.00 22:00 earned 51.00 22:15 earned 61.00 22:30 earned 61.00 22:45 earned 61.00 23:00 earned 61.00 23:15 earned 61.00 Total: 1413

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
29.19 ms | 407 KiB | 5 Q