Magazine Internet

On joue à cache-cache ?

Publié le 21 mars 2008 par Tonylepsie

Je crois que c’est le titre le plus pourri que j’ai jamais fait :) mais bref ! on va bien evidemment pas jouer à cache-cache (quoique ^^), mais parler de mise en cache !
La mise en cache de fichiers peut être très utile, notemment si on appelle régulierement des flux RSS/XML (par exemple si on utilise des Webservices), ou même sur des requêtes MySql qui reviennent souvent. Le gain en performances est tout à fait appréciable !

Le principe est on ne peut plus simple : au lieu d’effectuer une requête vers une ressource à chaque chargement de la page, on écrit lors du premier chargement le contenu de la ressource dans un fichier texte, qu’on appellera par la suite !

Mettre un menu dynamique en cache peut être une très bonne idée pour optimiser le chargement d’un site web

;)

L’exemple qui suit vous présente l’utilisation de la mise en cache sur un flux RSS.

Script php

    // recuperation du flux à traiter
    $flux = ‘http://feeds.feedburner.com/jegalereenwebdev’;
    $cache_file = ‘/cache/jegalere.xml’;
       
    // determination du temps de mise en cache (en secondes) : ici, 2h
    $delai = (60*2) ;
       
   // on verifie que le fichier est cache est toujours valide
   if ( file_exists($cache_file) & time() < (filemtime($cache_file)+$delai) ) {
           // le fichier en cache est valide, on le récupère
        $content = file_get_contents($cache_file);
        }
   // sinon, on met à jour le fichier en cache
   else {
       $content = file_get_contents($flux);
       if ( $content != ) {
            $file = fopen($cache_file, ‘w+’);
            fputs($file, $content);
            fclose($file);
            }
       else {
             $content = file_get_contents($rss_file);
         }
    }
 

Et voila !
Il ne reste plus qu’à parser la variable $content de la manière que vous préférez, et c’est plié !

cache, mysql, php, RSS

Retour à La Une de Logo Paperblog

A propos de l’auteur


Tonylepsie 3 partages Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte

Dossier Paperblog