Mise à jour le 26/12/2021
Utiliser un fichier pour la mise en cache

Utiliser un fichier pour la mise en cache


Voici trois fonctions prêtes à l'emploi pour simplement enregistrer des données dans un fichier texte (PHP 5,7,8).

On peut par exemple enregistrer un tableau un peu conséquent en json pour éviter de le recalculer.

Pour rappel, le filemtime retourne le nombre de secondes écoulées depuis la modification du fichier.

function storeCachedContent($filePath, $content)
{
    return file_put_contents($filePath, $content);
}

function isCached($cacheFile, $expireTime = 360)
{
    if(file_exists($cacheFile) && filemtime($cacheFile) > $expireTime){
        return true;
    }

    return false;
}

function getCachedContent($cacheFile)
{
    return @file_get_contents($cacheFile);
}


1. Compresser les données


function store($file,$datas)
{
    return file_put_contents($file,gzdeflate(json_encode($datas)));
}

function unstore($file)
{
    return json_decode(gzinflate(file_get_contents($file)),true);
}