Result: Discarded
The test labeled "ifs" was the faster by 0.0067 seconds, (0.600% faster)
The ifs test took 1.1108 seconds.
The min()/max() test took 1.1175 seconds.
Nitty-Gritty
Each test case ran 20 random code order iterations consisting of 297,415 loops for a total of 5,948,300 runs.
- Line execution difference (0.000001) milliseconds.
- Avg difference (0.335) milliseconds per 297,415 loops.
- Total difference 6.71 milliseconds for 5,948,300 loops
The iteration variablity for Code 1 was (4.0728) milliseconds and Code 2 was (3.1529) milliseconds. The lower and the closer together there values are the more accurate the results are.
Code
The first test, "min()/max()", was:
$GLOBALS['dummy'] = 83; for ($j = 0; $j < 100; $j++) $GLOBALS['dummy2'] = min(50, max(20, $GLOBALS['dummy']));
The second test, "ifs", was:
$GLOBALS['dummy'] = 83; for ($j = 0; $j < 100; $j++) { if ($GLOBALS['dummy'] < 20) $GLOBALS['dummy2'] = 20; elseif ($GLOBALS['dummy'] > 50) $GLOBALS['dummy2'] = 50; else $GLOBALS['dummy2'] = $GLOBALS['dummy']; }