Ejemplo n.º 1
0
 /**
  * Look for query cache file
  * @param string $query_id query id for finding
  * @param string $xml_file original xml query file
  * @return string cache file
  */
 function checkQueryCacheFile($query_id, $xml_file)
 {
     // first try finding cache file
     $cache_file = sprintf('%s%s%s.%s.%s.cache.php', _XE_PATH_, $this->cache_file, $query_id, __ZBXE_VERSION__, $this->db_type);
     $cache_time = -1;
     if (file_exists($cache_file)) {
         $cache_time = filemtime($cache_file);
     }
     // if there is no cache file or is not new, find original xml query file and parse it
     if ($cache_time < filemtime($xml_file) || $cache_time < filemtime(_XE_PATH_ . 'classes/db/DB.class.php') || $cache_time < filemtime(_XE_PATH_ . 'classes/xml/XmlQueryParser.class.php')) {
         $oParser = new XmlQueryParser();
         $oParser->parse($query_id, $xml_file, $cache_file);
     }
     return $cache_file;
 }
Ejemplo n.º 2
0
 /**
  * @brief 캐쉬파일을 찾아 본다
  *
  **/
 function checkQueryCacheFile($query_id, $xml_file)
 {
     // 일단 cache 파일을 찾아본다
     $cache_file = sprintf('%s%s%s.cache.php', _XE_PATH_, $this->cache_file, $query_id);
     if (file_exists($cache_file)) {
         $cache_time = filemtime($cache_file);
     } else {
         $cache_time = -1;
     }
     // 캐시 파일이 없거나 시간 비교하여 최근것이 아니면 원본 쿼리 xml파일을 찾아서 파싱을 한다
     if ($cache_time < filemtime($xml_file) || $cache_time < filemtime(_XE_PATH_ . 'classes/db/DB.class.php')) {
         require_once _XE_PATH_ . 'classes/xml/XmlQueryParser.class.php';
         $oParser = new XmlQueryParser();
         $oParser->parse($query_id, $xml_file, $cache_file);
     }
     return $cache_file;
 }