/** * 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; }
/** * @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; }