Calculate factorial times

Cached recursion Traditional recursion
function factCached($n) {
	static $cache = array();
	
	if ( !isset($cache[$n]) ) {
		if ( $n == 1 ) {
			$cache[$n] = 1;
		} else {
			$cache[$n] = $n * factCached($n - 1);
		}
	}
	
	return $cache[$n];
}
function fact($n) {
	if ( $n == 0 ) return 1;
	return $n * fact($n - 1);
}
Start: 1268214159.6668; End: 1268214159.6693; Difference: 0.0024621486663818 Start: 1268214159.6694; End: 1268214160.1294; Difference: 0.46000099182129
Solution: 9.3326215443944E+157 Solution: 9.3326215443944E+157