예제 #1
0
파일: O.php 프로젝트: mage2pro/core
 /**
  * @used-by _destruct()
  * @return void
  */
 private function cacheSave()
 {
     if ($this->isCacheEnabled()) {
         $this->cacheSaveBefore();
         $this->cacheSaveArea($this->cachedAllGlobal(), $this->cacheKeyGlobal());
         /**
          * При вызове метода @uses Df_Core_Model::getCacheKeyPerStore()
          * может произойти исключительная ситуация в том случае,
          * когда текущий магазин системы ещё не инициализирован
          * (вызов Mage::app()->getStore() приводит к исключительной ситуации),
          * поэтому вызываем @uses Df_Core_Model::getCacheKeyPerStore()
          * только если в этом методе есть реальная потребность,
          * т.е. если класс действительно имеет свойства, подлежащие кэшированию в разрезе магазина,
          * и если текущий магазин уже инициализирован.
          */
         if ($this->cachedAllPerStore() && \Df\Core\State::s()->storeInitialized()) {
             $this->cacheSaveArea($this->cachedAllPerStore(), $this->cacheKeyPerStore());
         }
     }
 }
예제 #2
0
파일: state.php 프로젝트: mage2pro/core
/**
 * @return \Df\Core\State
 */
function df_state()
{
    static $r;
    return $r ? $r : ($r = \Df\Core\State::s());
}