3v4l.org

run code in 300+ PHP versions simultaneously
<?php // user input of years - note it must be numeric $ar = array(1944, 1674, 3021); // find max year of the input for 'dynamic' approach // note the unpacking of the array is not needed I do not think // but does work - check performance $maxCentury = max(...$ar); // round max century to -3 (closest 1000) $roundedCentury = round($maxCentury, -3); foreach($ar as $year): foreach(range(0, $maxCentury, 1000) as $century): if(floor($year, -3) == $century): ?> <li> <?= $century; ?> <ul> <?= $year; ?> </ul> </li> <?php endif; endforeach; endforeach;

preferences:
68.66 ms | 402 KiB | 5 Q