source: spip-zone/_plugins_/plugins_seenthis/microcache/microcache_options.php

Last change on this file was 96886, checked in by fil@…, 4 years ago

gerer les erreurs sql comme dans inc/cache ; cela afin de resoudre eventuellement http://seenthis.net/messages/484597

File size: 819 bytes
Line 
1<?php
2
3function microcache_key($id, $fond) {
4        include_spip('memoization_options');
5        if (!function_exists('cache_set')) return false;
6        return $fond.'-'. (is_numeric($id) ? $id : md5($id));
7}
8
9function supprimer_microcache($id, $fond) {
10        if ($key = microcache_key($id, $fond))
11                return cache_del($key);
12}
13
14function microcache($id, $fond, $calcul=false) {
15        $key = microcache_key($id, $fond);
16        if (!$key
17        OR $calcul
18        OR in_array($_GET['var_mode'], array('recalcul', 'debug'))
19        OR !($contenu = cache_get($key))
20        ) {
21                $contenu = recuperer_fond($fond, array('id'=>$id));
22                if ($key
23                AND $_GET['var_mode'] != 'inclure'
24                AND !$_POST
25                AND !(isset($GLOBALS['var_nocache']) AND $GLOBALS['var_nocache'])
26                AND !defined('spip_interdire_cache')
27                ) {
28                        cache_set($key, $contenu, $ttl = 7*24*3600);
29                }
30        }
31        return $contenu;
32}
33
34
35?>
Note: See TracBrowser for help on using the repository browser.