当前位置: 首页>>代码示例>>PHP>>正文


PHP CPHPCache::GetPath方法代码示例

本文整理汇总了PHP中CPHPCache::GetPath方法的典型用法代码示例。如果您正苦于以下问题:PHP CPHPCache::GetPath方法的具体用法?PHP CPHPCache::GetPath怎么用?PHP CPHPCache::GetPath使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在CPHPCache的用法示例。


在下文中一共展示了CPHPCache::GetPath方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: loadConfig

 public function loadConfig()
 {
     //todo fix empty config caching
     $cache = new \CPHPCache();
     $cacheFile = $_SERVER['DOCUMENT_ROOT'] . "/bitrix/cache/" . $cache->GetPath(__CLASS__);
     // проверяем, обновлялся ли конфиг
     $cacheWritten = filemtime($cacheFile);
     $configWritten = filemtime($this->configFile);
     // устаревший кеш или неудачно начатый кеш перезаписываем
     if ($configWritten > $cacheWritten || !$cache->InitCache(self::TTL, __CLASS__, '/')) {
         $cache->Clean(__CLASS__, '/');
         try {
             parent::loadConfig();
             if ($cache->StartDataCache(self::TTL, __CLASS__, '/')) {
                 $cache->EndDataCache(array('config' => $this->config));
             } else {
                 _log('Caching failed', 'widgets');
             }
         } catch (Exception $e) {
             _log('loading config error: ' . $e->getMessage(), 'widgets');
         }
     } else {
         $vars = $cache->GetVars();
         $this->config = $vars['config'];
     }
 }
开发者ID:ASDAFF,项目名称:bx-structure,代码行数:26,代码来源:BStructure.php

示例2: InitCache

 function InitCache($TTL, $uniq_str, $initdir = false, $basedir = "cache")
 {
     global $APPLICATION, $USER;
     if ($initdir === false) {
         $initdir = $APPLICATION->GetCurDir();
     }
     $this->basedir = BX_PERSONAL_ROOT . "/" . $basedir . "/";
     $this->initdir = $initdir;
     $this->filename = "/" . CPHPCache::GetPath($uniq_str);
     $this->TTL = $TTL;
     $this->uniq_str = $uniq_str;
     $this->vars = false;
     if ($TTL <= 0) {
         return false;
     }
     if (is_object($USER) && $USER->CanDoOperation('cache_control')) {
         if (isset($_GET["clear_cache_session"])) {
             if (strtoupper($_GET["clear_cache_session"]) == "Y") {
                 $_SESSION["SESS_CLEAR_CACHE"] = "Y";
             } elseif (strlen($_GET["clear_cache_session"]) > 0) {
                 unset($_SESSION["SESS_CLEAR_CACHE"]);
             }
         }
         if (isset($_GET["clear_cache"]) && strtoupper($_GET["clear_cache"]) == "Y") {
             return false;
         }
     }
     if (isset($_SESSION["SESS_CLEAR_CACHE"]) && $_SESSION["SESS_CLEAR_CACHE"] == "Y") {
         return false;
     }
     $arAllVars = array("CONTENT" => "", "VARS" => "");
     if (!$this->_cache->read($arAllVars, $this->basedir, $this->initdir, $this->filename, $this->TTL)) {
         return false;
     }
     $GLOBALS["CACHE_STAT_BYTES"] += $this->_cache->read;
     $this->content = $arAllVars["CONTENT"];
     $this->vars = $arAllVars["VARS"];
     return true;
 }
开发者ID:,项目名称:,代码行数:39,代码来源:


注:本文中的CPHPCache::GetPath方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。