• 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
$this->db->cache_delete('controller', '*');

#1
[eluser]jstrebel[/eluser]
Will the cache_delete function accept a wildcard *, or at least a regular expression of some sort?

I would like to delete all the caches files created from 1 controller, but not every cache from all controllers... as delete_all() would.

IN this case the 2nd uri segment is remapped to one of hundreds of tag names, like /ideas/bar /ideas/foo

Thanks.

#2
[eluser]jstrebel[/eluser]
anyone?

#3
[eluser]Pascal Kriete[/eluser]
It doesn't currently accept anything of the sort, but it shouldn't be too hard to write a helper that does it.

Something along these lines. Untested (so be careful!):
Code:
// Cache files are stored as segment1+segment2, so construct your pattern accordingly
function regex_purge_db_cache($pattern)
{    
    $CI =& get_instance();
    $CI->load->helper('file');
    
    $pattern = $CI->db->cachedir.$pattern;
    
    $paths = glob($pattern, GLOB_ONLYDIR|GLOB_NOSORT|GLOB_MARK);
    
    foreach($paths as $path)
    {
        delete_files($path, TRUE);
    }
}


Digg   Delicious   Reddit   Facebook   Twitter   StumbleUpon  


  Theme © 2014 iAndrew  
Powered By MyBB, © 2002-2021 MyBB Group.