Ignore:
Timestamp:
09/06/10 21:39:10 (21 months ago)
Author:
vain
Message:
  • update for apc store(), delete(), added clear()
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/core/cache/apc.cache.php

    r4599 r4613  
    7777     * @return boolean True if the data was successfully cached, false on failure 
    7878     */ 
    79     public function store($key, $data, $cache_lifetime) 
    80     { 
    81         return apc_store($key, $data, $cache_lifetime); 
     79    public function store($key, $data, $cache_lifetime, $overwrite = false) 
     80    { 
     81        if($key === null) 
     82        { 
     83            return false; 
     84        } 
     85        elseif($overwrite == false) 
     86        { 
     87            return apc_add($key, $data, $cache_lifetime); 
     88        } 
     89        else # overwrite 
     90        { 
     91            return apc_store($key, $data, $cache_lifetime); 
     92        } 
    8293    } 
    8394 
     
    8697     * 
    8798     * @param string $key Identifier for the data 
    88      * @return boolean True if the data was successfully removed, false on failure 
     99     * @return int Number of keys deleted. 
    89100     */ 
    90101    public function delete($key) 
    91102    { 
    92         return apc_delete($key); 
     103        $key = (array) $key; 
     104        $keys_deleted = 0; 
     105 
     106        foreach($key as $cacheKey) 
     107        { 
     108            return if(true === apc_delete($key)) 
     109            { 
     110                $keys_deleted++; 
     111            } 
     112        } 
     113 
     114        return $keys_deleted; 
     115    } 
     116 
     117    public function clear() 
     118    { 
     119        return apc_clear_cache(); 
    93120    } 
    94121 
Note: See TracChangeset for help on using the changeset viewer.