/** * Resets all clocks for all benchmarks. * * @param array $retain_benachmarks Optional. Numeric array containing benchmark-identifiers that should NOT get resetted. */ public static function resetAll($retain_benchmarks = array()) { // If no benchmarks should be retained if (count($retain_benchmarks) == 0) { self::$benchmark_results = array(); return; } // Else reset all benchmarks BUT the retain_benachmarks @reset(self::$benchmark_results); while (list($identifier) = @each(self::$benchmark_results)) { if (!in_array($identifier, $retain_benchmarks)) { self::$benchmark_results[$identifier] = 0; } } }