iiifx-production/yii2-folder-dependency 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

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, которая позволяет сбрасывать кэш при обнаружении изменений папки или содержащихся в ней файлов.

Latest Version on Packagist Build Status Software License Total Downloads

Установка

Используя 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.

Тесты

В данный момент не реализованы.

Лизценция

Software License

Bitdeli Badge

统计信息

  • 总下载量: 989
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 3
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 3
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2015-06-25