/** * @see ICache::set(); * @param string $key * @param string $content * @param null $expire * @return int */ public function set($key, $content, $expire = null) { $cacheFile = $this->getCacheFile($key, $this->cacheExt); $dirname = dirname($cacheFile); if (!file_exists($dirname)) { FileUtils::makeFileDirs($dirname); } return file_put_contents($cacheFile, $content, LOCK_EX); }
/** * @see \herosphp\session\interfaces\ISession::open(). */ public static function open($savePath, $sessionName) { if (!self::$sessionSavePath) { self::$sessionSavePath = $savePath; //创建session目录 if (!file_exists(self::$sessionSavePath)) { FileUtils::makeFileDirs(self::$sessionSavePath); } } //do nothing here return TRUE; }
/** * 替换 CR换行符号 * @param $filename */ private static function replaceCR($filename) { $ext = FileUtils::getFileExt($filename); if (!in_array($ext, self::$extensions)) { return; } $content = file_get_contents($filename); $content = str_replace("\r", "\n", $content); if (file_put_contents($filename, $content)) { tprintOk("成功替换文件{$filename}"); self::$fileNum++; } else { tprintError("替换文件失败{$filename}"); //记录错误日志 file_put_contents(self::$logFile, "替换文件失败{$filename}", FILE_APPEND); } }
/** * 编译模板 * @param string $tempFile 模板文件路径 * @param string $compileFile 编译文件路径 */ private function complieTemplate($tempFile, $compileFile) { //根据缓存情况编译模板 if (!file_exists($compileFile) || $this->cache == 1 && filemtime($compileFile) < filemtime($tempFile) || $this->cache == 0) { //获取模板文件 $content = @file_get_contents($tempFile); if ($content == FALSE) { if (APP_DEBUG) { E("加载模板文件 {" . $tempFile . "} 失败!请在相应的目录建立模板文件。"); } } //替换模板 $content = preg_replace(array_keys(self::$tempRules), self::$tempRules, $content); //生成编译目录 if (!file_exists(dirname($compileFile))) { FileUtils::makeFileDirs(dirname($compileFile)); } //生成php文件 if (!file_put_contents($compileFile, $content, LOCK_EX)) { if (APP_DEBUG) { E("生成编译文件 {$compileFile} 失败。"); } } } }