first commit
This commit is contained in:
77
_rejestracja/core/class/QueryCache.class.php
Normal file
77
_rejestracja/core/class/QueryCache.class.php
Normal file
@@ -0,0 +1,77 @@
|
||||
<?php
|
||||
/*
|
||||
* To change this template, choose Tools | Templates
|
||||
* and open the template in the editor.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Description of QueryCache
|
||||
*
|
||||
* @author User
|
||||
*/
|
||||
class QueryCache {
|
||||
|
||||
private $query;
|
||||
private $cacheQueryName;
|
||||
private $cachePathFile;
|
||||
|
||||
public function __construct($queryCacheName,$query)
|
||||
{
|
||||
if(QUERYCACHE_ENABLE == true)
|
||||
{
|
||||
$this->cachePathFile = PATH_CORE . "/model/QueryCacheTemp.class.php";
|
||||
$this->query = $query;
|
||||
$this->cacheQueryName = $queryCacheName;
|
||||
$this->Write();
|
||||
}
|
||||
}
|
||||
|
||||
public function Write()
|
||||
{
|
||||
|
||||
// jesli nie ma query w tablicy i nie bylo juz w tym skrypcie dodawane
|
||||
if(!isset(QueryCacheTemp::$cacheQuery[$this->cacheQueryName]) && Registry::Get($this->cacheQueryName) != true)
|
||||
{
|
||||
$fp = fopen($this->cachePathFile,"r+");
|
||||
|
||||
if(count(QueryCacheTemp::$cacheQuery) > 0 || Registry::Get("cacheQueryItems") > 0)
|
||||
$cacheFile=",";
|
||||
else
|
||||
$cacheFile="";
|
||||
|
||||
$cacheFile.="
|
||||
\"$this->cacheQueryName\" => \"$this->query\");}?>";
|
||||
|
||||
if(Registry::Get("cacheQueryItems") > 0)
|
||||
fseek($fp, -5,SEEK_END);
|
||||
else
|
||||
fseek($fp, -5,SEEK_END);
|
||||
|
||||
fputs($fp, $cacheFile);
|
||||
|
||||
fclose($fp);
|
||||
$item = true;
|
||||
|
||||
if(Registry::Exists("cacheQueryItems"))
|
||||
$cacheQueryItems = Registry::Get("cacheQueryItems");
|
||||
else
|
||||
$cacheQueryItems = 0;
|
||||
|
||||
Registry::Set($this->cacheQueryName, $item);
|
||||
Registry::Set("cacheQueryItems", ++$cacheQueryItems);
|
||||
}
|
||||
}
|
||||
|
||||
public function Clear()
|
||||
{
|
||||
$fp = fopen($this->cachePathFile,"r+");
|
||||
$cacheFile='<?php
|
||||
class QueryCacheTemp
|
||||
{
|
||||
static $cacheQuery = array(
|
||||
);}?>';
|
||||
fputs($fp, $cacheFile);
|
||||
fclose($fp);
|
||||
}
|
||||
}
|
||||
?>
|
||||
Reference in New Issue
Block a user