Changeset 85026 in spip-zone for _plugins_/plugins_seenthis/microcache


Ignore:
Timestamp:
Oct 6, 2014, 8:01:12 PM (4 years ago)
Author:
fil@…
Message:

migration reversible vers memoization

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/plugins_seenthis/microcache/microcache_options.php

    r51962 r85026  
    11<?php
     2
     3// FALSE pour new style = memoization, TRUE pour old style = fichier dans local/
     4if (FALSE) {
     5
    26
    37function supprimer_microcache($id, $fond) {
     
    1620}
    1721
     22
     23
     24} else {
     25
     26
     27
     28function microcache_key($id, $fond) {
     29        include_spip('memoization_options');
     30        if (!function_exists('cache_set')) return false;
     31        return $fond.'-'. (is_numeric($id) ? $id : md5($id));
     32}
     33
     34function supprimer_microcache($id, $fond) {
     35        if ($key = microcache_key($id, $fond))
     36                return cache_del($key);
     37}
     38
     39function microcache($id, $fond, $calcul=false) {
     40        $key = microcache_key($id, $fond);
     41        if (!$key
     42        OR $calcul
     43        OR in_array($_GET['var_mode'], array('recalcul', 'debug'))
     44        OR is_null($contenu = cache_get($key))) {
     45                $contenu = recuperer_fond($fond, array('id'=>$id));
     46                if ($key
     47                AND $_GET['var_mode'] != 'inclure'
     48                AND !$_POST
     49                ) {
     50                        cache_set($key, $contenu, $ttl = 7*24*3600);
     51                }
     52        }
     53        return $contenu;
     54}
     55
     56
     57
     58}
     59
     60
    1861?>
Note: See TracChangeset for help on using the changeset viewer.