From 9fa558cc22d8fb9a21e120cd8e598aa3b851d312 Mon Sep 17 00:00:00 2001 From: Erik Moeller Date: Mon, 19 May 2003 19:31:33 +0000 Subject: [PATCH] experimental file cache now creates hash directories if necessary --- includes/Article.php | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/includes/Article.php b/includes/Article.php index c3effe5b3d..3453d7e720 100644 --- a/includes/Article.php +++ b/includes/Article.php @@ -1485,7 +1485,7 @@ name=\"wpSummary\" maxlength=200 size=60>
$this->loadFromFileCache(); exit; } else { - wfDebug( " tryFileCache() - starting buffer\n" ); + wfDebug( " tryFileCache() - starting buffer\n" ); ob_start( array(&$this, 'saveToFileCache' ) ); } } else { @@ -1541,9 +1541,14 @@ name=\"wpSummary\" maxlength=200 size=60>
} function saveToFileCache( $text ) { - # FIXME: assumes directories are already laid out + wfDebug(" saveToFileCache()\n"); - $f = fopen( $this->fileCacheName(), "w" ); + $filename=$this->fileCacheName(); + $mydir2=substr($filename,0,strrpos($filename,"/")); # subdirectory level 2 + $mydir1=substr($mydir2,0,strrpos($mydir2,"/")); # subdirectory level 1 + if(!file_exists($mydir1)) { mkdir($mydir1,0777); } # create if necessary + if(!file_exists($mydir2)) { mkdir($mydir2,0777); } + $f = fopen( $filename, "w" ); if($f) { fwrite( $f, str_replace( "", "\n", -- 2.20.1