3v4l.org

run code in 300+ PHP versions simultaneously
<?php $grades = array( "PK", "K", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12" ); function normalizeLexileScore($ability, $grade_level = null, $cast = false) { if( $grade_level == null ) { return $ability; } if ($cast) { $grade_level = (int)$grade_level; } $grade_level = max(min($grade_level, 9), 2); $gli_cap = array(NULL, NULL, 975, 1070, 1165, 1250, 1300, 1370, 1420, 1500); $normalized = min($ability, $gli_cap[$grade_level]); return $normalized; } foreach ($grades as $grade) { $minBad = normalizeLexileScore(0, $grade, false); $maxBad = normalizeLexileScore(2000, $grade, false); $minGood = normalizeLexileScore(0, $grade, true); $maxGood = normalizeLexileScore(2000, $grade, true); printf("Grade %2s: Bad: %d < %d, Good: %d < %d\n", $grade, $minBad, $maxBad, $minGood, $maxGood); }

preferences:
65.75 ms | 402 KiB | 5 Q