#Fonctions de cache #http://warriordudimanche.net function lis_dans_cache($fichier,$returnvar=null,$echoresult=null,$unserialize=true){ //lit le cache if (file_exists('temp/'.$fichier)){ $var=file_get_contents('temp/'.$fichier); if ($unserialize==true){$var=unserialize($var);} if ($echoresult==true){echo $var;return true;} if ($returnvar==true){return $var;} }else{return false;} } function ecris_dans_cache($fichier,$var,$serialize=true){ //ecrit le cache if ($serialize==true){$var=serialize($var);} file_put_contents('temp/'.$fichier,$var); } function clear_cache(){ $fs=glob('temp/*'); foreach ($fs as $file){ unlink ($file); } } function start_cache(){ ob_start(); } function end_cache($fichier,$returnvar=null,$echoresult=null){ $var=ob_get_clean(); if ($echoresult==true){ecris_dans_cache($fichier,$var,false);echo $var;return true;} if ($returnvar==true){ecris_dans_cache($fichier,$var,true);return unserialize($var);} } //Stocker le r├ęsultat d'une portion de code if (!$var=lis_dans_cache('nomdufichierdecache',true,false,false)){// pas dans le cache start_cache(); list_matching_snippets($titre,$tagonly); end_cache'nomdufichierdecache',false,true); }else{ echo $var; } //Stocker une variable if (!$var=lis_dans_cache('tagcloud',true,false,true)){ $tags=list_tags(); $taglist=array(); foreach($tags as $tag){ $taglist[]=$tag['x']; } natcasesort($taglist); ecris_dans_cache('tagcloud',$taglist,true); ecris_dans_cache('tags',$tags,true); }else{ $taglist=$var; $tags=lis_dans_cache('tags',true); }