iiifx-production/yii2-folder-dependency
最新稳定版本:v0.1.0
Composer 安装命令:
composer require iiifx-production/yii2-folder-dependency
包简介
Folder dependency for Yii2 framework
README 文档
README
FolderDependency - дополнительная зависимость для фреймворка Yii2, которая позволяет сбрасывать кэш при обнаружении изменений папки или содержащихся в ней файлов.
Установка
Используя Composer:
$ composer require iiifx-production/yii2-folder-dependency
или добавить в composer.json, в секцию require:
"iiifx-production/yii2-folder-dependency": "0.1.*@stable"
Использование
use iiifx\cache\dependency\FolderDependency; $cache = Yii::$app->cache; # Проверяем наличие кэша if ( ( $cachedData = $cache->get( 'some-cache-key' ) ) === FALSE ) { # Кэша нет, подготавливаем данные $cachedData = [ /* .. */ ]; # Создаем зависимость для кэша $folderDependency = new FolderDependency( [ 'folder' => '/path/to/folder' ] ); # Кэшируем данные $cache->set( 'some-cache-key', $cachedData, 0, $folderDependency ); } # Пользуемся данными var_export( $cachedData );
В данном примере кэш будет создан при первом запросе. При последующих запросах будут использоваться закэшариванные данные, пока папка folder или размещенные в ней файлы не изменятся. Любое изменение файла внутри folder будет обнаружено и кэш потеряет свою актуальность. Не имеет значения какое количество файлов будет содержать folder, это никак не повлияет на производительность. Зависимость проверяет лишь папку, не затрагивая файлы, который в ней содержаться.
Для создания зависимости от нескольких папок пути можно передать списком:
$foldersDependency = new FolderDependency( [ 'folder' => [ '/path/to/folder1', '/path/to/folder2', '/path/to/folder3', ] ] );
В этом случае кэш потеряет свою актуальность при изменении любой папки или любого файла внутри папок.
!!! Важно !!!
Зависимость не обнаружит изменения во вложенных папках, которые размещены внутри указанных в folder.
Флаг reusable по умолчанию установлен в TRUE.
Тесты
В данный момент не реализованы.
Лизценция
统计信息
- 总下载量: 989
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 3
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2015-06-25