'add', '-' => 'sub'); $count = 100000; $start = microtime(true); for($i = 0; $i < $count; $i++) $operations[$operation]($initial, $unit); $end = microtime(true); echo "took " . number_format((($end - $start)/$count), 15) . " microseconds\n"; $start = microtime(true); $str = "return $initial $operation $unit;"; for($i = 0; $i < $count; $i++) eval($str); $end = microtime(true); echo "took " . number_format((($end - $start)/$count), 15) . " microseconds\n"; ?>