there4/slim-stash-middleware
最新稳定版本:v0.1.2
Composer 安装命令:
composer require there4/slim-stash-middleware
包简介
Slim Stash Cache Middleware
README 文档
README
Caching middleware layer for Slim using Stash
About
A simple middleware layer for Slim that provides a caching mechanism for endpoints.
Example Setup
Here is an example of the middleware setup. It's using a config setting to enable the cache.
<?php // Stash Page Cache Middleware // ----------------------------------------------------------------------------- // A generalized way of caching the output of an endpoint $app->container->singleton('stash', function () use ($app) { if (!is_dir($app->config('caches.path'))) { mkdir($app->config('caches.path'), 0777, true); } $stashFileSystem = new \Stash\Driver\FileSystem(array( 'path' => $app->config('caches.path') )); return new \Stash\Pool($stashFileSystem); }); if ($app->config('enable_cache')) { $app->add(new \There4\Slim\Middleware\StashCache($app->stash)); }
And an endpoint that uses the cache:
<?php // Root of the site // ----------------------------------------------------------------------------- // Simple index page - no data $app->get('/', function () use ($app) { $app->response->allowCache = true; $app->response->cacheExpiration = 3600; $app->render('index.html'); }); // User Profile Page // ----------------------------------------------------------------------------- // This would need to be coupled with a cache invalidation on a user change $app->get('/profile', function () use ($app) { $user = $app->currentUser; $app->response->allowCache = true; $app->response->cacheExpiration = 3600; $app->response->signature = 'userProfile' . $user->id; $app->render('index.html'); });
Quick API Reference
- $app->response->allowCache
boolenable caching - $app->response->cacheExpiration
intseconds to hold data in cache; - $app->response->signature
mixedleave unset for automatic url based. String for simple signature. Callback function will be executed. Array incall_user_funcformat is acceptable as well.
TODO
- Cache warming script
- Tests
统计信息
- 总下载量: 54
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 9
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2014-10-29