I funktionen til at generere tabellen skal du få den til at gemme resultatet til en fil på disken:
/cache/groups/1.txt
/cache/groups/2.txt
Du behøver ikke nødvendigvis at køre et ugentlig batchjob for det, når du kalder funktionen for at få dataene, så tjek om cachen er forældet (eller ikke-eksisterende). Hvis ja, generer og cache resultaterne derefter. Hvis ikke, returnerer du bare den cachelagrede fil.
function getGroupTable($groupId) {
if (cacheIsStale($groupId)) {
generateCache($groupId);
}
return file_get_contents($cacheFile);
}
cacheIsStale()
funktion kunne bare se på filens tidsstempler
for at teste for friskhed.