Как избавиться от капилляров на ногах : как убрать лопнувшие

/ Класс кеширования PHPCache 1) кеш не серилизуется ,а сохраняется как php код. 2) InitCache всего лишь обертка для StartDataCache для сохранения заменяемости классов 3) Параметр конструктора $subdir если не равен false то будет использоваться разделение файлов кешей по поддерикториям на основании первых N символов хеша (по умолчанию = 2) усли указано число то оно будет использовано в качестве первых N символов хеша. Остальные параметры и результирующие значения методов QPHPCache сходны с методами класса СPHPCache. / class PHPCache { var $_base_cachedir; var $_cache_dir; var $_cache_id; var $_fname; var $_varname; var $_ftname; var $_inited; var $cacheHolder = array(); function __construct($subdir=false) { // global $USER; $this->

_base_cachedir = config_item("cache_path"); $this->_inited=false; $this->_debug=false; $this->_nocache=false; $this->_mksubdir=false; $this->_subdir_name_length=2; //Очистка кеша и отладка / if(isset($_REQUEST["clear_cache"])||isset($_REQUEST["qpc_debug"])){ if(isset($USER) && is_object($USER)){ if(($USER->IsAuthorized())&&($USER->IsAdmin())){ if(isset($_REQUEST["qpc_debug"])&&($_REQUEST["qpc_debug"]=="Y")) $this->_debug=true; if(isset($_REQUEST["clear_cache"])&&($_REQUEST["clear_cache"]=="Y")) $this->_nocache=true; } } } / if($subdir!==false){ $this->_mksubdir=true; if(is_int($subdir)){ $subdir=intval($subdir); if($subdir >2){ $this->_subdir_name_length=$subdir; } } } } function initCache($cache_life_time,$cache_id,$cache_dir=false) { $result= $this->StartDataCache($cache_life_time,$cache_id,$cache_dir); $this->_inited=true; return !$result; } function startDataCache($cache_life_time = false, $cache_id = false, $cache_dir = false, $vars = array() ) { if($this->_inited) return true; // if (self::cache_php_valid) $result = true;//cache not valid $this->_cache_dir=$this->_base_cachedir.$cache_dir; $this->_cache_id=md5($cache_id); // поддирректории if($this->_mksubdir){ $this->_cache_dir.=substr($this->_cache_id,0,$this->_subdir_name_length)."/"; } $this->_fname=$this->_cache_dir."qpc_".$this->_cache_id; $this->_life_time=intval($cache_life_time); $varname=$this->_varname="php_cache_".$this->_cache_id; //$this->_ftname=$this->_fname."" if($this->_debug) $this->debugMessage($this->_cache_id,'QPHPCache::StartDataCache'); if(!is_file($this->_cache_dir)){ //Проверям на налисие дирректории if(!is_dir($this->_cache_dir)) if(!mkdir($this->_cache_dir,0775,true)){//recursive creation if ($this->_debug) $this->debugMessage($this->_cache_dir,"Cannot create dir"); } //directory exist //т.к. для EndDataCache необходимо наличие существующей дирректории проверяем на очистку кеша здесь if($this->_nocache) return true;//return cache not valid if(file_exists($this->_fname)){ include($this->_fname); if(isset($$varname)){ if ($this->_debug) $this->debugMessage($varname,"variable exist"); $tmp=$$varname; //if(empty($tmp["TIME"])) $tmp=time()-$cache_life_time-5;//will be not valid $this->cacheHolder[$this->_cache_id]=$tmp; if ($this->_debug){ // $this->debugMessage($GLOBALS["QPHPCache_Object"],'global'); $this->debugMessage($tmp,"tmp"); $this->debugMessage(time(),"current time"); $this->debugMessage($tmp['TIME']+$cache_life_time,"cr+life"); $this->debugMessage(($tmp['TIME']+$cache_life_time)-time(),"diff"); } //if(empty($tmp["TIME"])) $tmp=time(); if(($tmp['TIME']+$cache_life_time)>time()) return false; } }//file exists }else{ if ($this->_debug) $this->debugMessage($this->_cache_dir,"File with the same name as cache directory exist"); } return $result; } function save($vars = false) { if($this->_debug) $this->debugMessage($this->_cache_id,__CLASS__."::".__FUNCTION__); $var=array("TIME"=>time(), "TIME_EXPIRE"=>time()+$this->_life_time, "VALUE"=>$vars); //ob_start(); $text = var_export($var,1); //$text=ob_get_contents(); //ob_end_clean(); $f=fopen($this->_fname,"wt"); if( (file_exists($this->_fname)&&flock($f,LOCK_EX))|| $f!==false){//n $text="\$".$this->_varname."=\n".$text; $text=""; if(fwrite($f,$text)===false){ if ($this->_debug) $this->debugMessage($this->_fname,"write_fails"); } flock($f, LOCK_UN); fclose($f); }else { if ($this->_debug) $this->debugMessage($this->_fname,"Locking fails"); } } function get() { if(isset($this->cacheHolder[$this->_cache_id])){ return $this->cacheHolder[$this->_cache_id]["VALUE"]; }else return false; } function debugMessage($args=array()) { log_message("error",serialize(func_get_args())); } } ?> An Error Was Encountered

Non-existent class: PhpCache

Non-existent class: PhpCache

Сожелеем, но вы попали в тот исключительный момент, когда с системой что-то неладное.
Пожалуйста, повторите свою попытку через некоторое время - мы уже знаем о проблеме и обязательно решим ее.

Источник: http://www.medee.ru/syndrome/description/id/2021

ВЕРНУТЬСЯ
Комментариев: 5 Просмотров: 5866
Вена лопнула что делать на ноге в домашних условиях

/ Класс кеширования PHPCache 1) кеш не серилизуется ,а сохраняется как php код. 2) InitCache всего лишь обертка для StartDataCache для сохранения заменяемости классов.