Как создать подпапку в папке кеша используя codeigniter? - PullRequest
2 голосов
/ 16 ноября 2011
class Caching extends CI_Controller { 

public function index() 
{ 
   $this->load->view('employee/index'); 
   $this->output->cache(15);
} 

} 

Я могу создать кеш для index.php в папке кеша, но я хочу создать папку в кеше / сотрудник / файл кеша

Создание папки Динамически в зависимости от того, какая папка представляетзвонит

Ответы [ 2 ]

1 голос
/ 10 июля 2015

Полагаю, вы хотите создать подпапки в папке кэша.Таким образом, вы можете изменить system / helpers / file_helper.php

Функция write_file () должна выглядеть следующим образом

function write_file($path, $data, $mode = FOPEN_WRITE_CREATE_DESTRUCTIVE)
{
    // Modifications here
    # Usage:
    # $this->cache->save('user/favourites/page1', $favourites);
    # Will create folder 'user/favourites' at cache folder and file 'page1' with data
    if (strpos($path, '/') !== false) {
        $folders = explode('/', $path);
        unset($folders[count($folders) - 1]);
        $dir = implode('/', $folders);
        mkdir($dir, 0744, TRUE);
    }
    // End of modifications

    if ( ! $fp = @fopen($path, $mode))
    {
        return FALSE;
    }

    flock($fp, LOCK_EX);
    fwrite($fp, $data);
    flock($fp, LOCK_UN);
    fclose($fp);

    return TRUE;
}

Или вы можете создать файл my_file_helper.php для «расширения» системного помощника ипереопределить эту функцию.Это гораздо лучшее решение.

1 голос
/ 16 ноября 2011

Вам необходимо указать его в application/config.php

/*
|--------------------------------------------------------------------------
| Cache Directory Path
|--------------------------------------------------------------------------
|
| Leave this BLANK unless you would like to set something other than the default
| system/cache/ folder.  Use a full server path with trailing slash.
|
*/
$config['cache_path'] = 'var/www/site/public_html/application/cache/employee/cachefile';

//  ^ or whatever your server path to that folder is! ^
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...