예제 #1
0
 /**
  * @param string $tableName
  *
  * @return array
  */
 public function &getColumnsMetadata($tableName)
 {
     if (!isset(self::$columnsMetadata[$tableName])) {
         self::$columnsMetadata[$tableName] = static::$useMemcacheForMetadata ? Memcache::remember(hash('md5', $tableName . '.meta'), function () use($tableName) {
             return $this->retrieveColumnsMetadata($tableName);
         }) : $this->retrieveColumnsMetadata($tableName);
     }
     return self::$columnsMetadata[$tableName];
 }
예제 #2
0
 public static function getModuleViewCached($division, $module, $method)
 {
     $params = func_get_args();
     if (Config::application('useCache') && !DEBUG) {
         $key = self::getCacheKeyForCall($params);
         $retValue = Memcache::remember($key, function () use($params) {
             return call_user_func_array(array('self', 'getModuleView'), $params);
         });
     } else {
         // [TODO]: cache 2 file
         //call_user_func_array(array(self,'getModuleView'),$params);
         $retValue = call_user_func_array(array('self', 'getModuleView'), $params);
     }
     return $retValue;
 }