pllano/cache 问题修复 & 功能扩展

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

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

pllano/cache

Composer 安装命令:

composer require pllano/cache

包简介

Caching for API Shop

README 文档

README

Демо и тесты

Поддерживаемые типы кеша

  • memcached - стабильно
  • memcache - стабильно
  • filesystem - стабильно
  • json - стабильно
  • predis - стабильно
  • redis - стабильно
  • mongodb - стабильно
  • elasticsearch - в разработке
  • apcu - дорабатывается (обнаружены ошибки в cache/cache)
  • apc - дорабатывается (обнаружены ошибки в cache/cache)
  • array - дорабатывается
  • illuminate - дорабатывается
  • doctrine - дорабатывается

Конфигурация

Передать конфигурацию можно двумя способами:

  • Из фала cache_config.json
  • Массивом в конструктор $config = [];

Использование

use Pllano\Caching\Cache;
 
// Передать конфигурацию в конструктор
// Если передать пустой массив [] возмет конфигурацию из файла cache_config.json
$cache_config = [];
$key = 'site/index'; // Передать url или ключ без кодирования
// $key = 'https://example.com/to/patch?param=data/lang=ru'; // При мультиязычности рекомендуется добавлять язык
$cache_lifetime = 30*24*60*60; // Установить время жизни кеша. в примере установлено 30 дней.
 
// Подключить класс
$cache = new Cache($cache_config);
// Установить путь к файлу конфигурации
// $path = __DIR__ . '/../configs/';
// $cache->set_config($path);
// Проверяем статус кеширования и наличие кеша
if ($cache->run($key, $cache_lifetime) === null) {
    // Контент для сохранения передается в виде массива
    $content = []; // Получаем массив данных из базы
    // Если кеширование включено сохраняем кеш
    if ((int)$cache->state() == 1) {
        $cache->set($content, $key);
    }
} else {
    // Если кеширование включено и кеш существует вернет массив данных из кеша
    $content = $cache->get($key);
}

Передать html код

// $cache->run_html();
// $cache->set_html();
// $cache->get_html();
 
if ($cache->run_html($key, $cache_lifetime) === null) {
    if ((int)$cache->state() == 1) {
        $cache->set_html($content, $key);
    }
} else {
    $content = $cache->get_html($key);
}

Установка

Подключить с помощью Composer

"require" {
    ...
-    "pllano/cache": "1.0.1",
+    "pllano/cache": "1.0.2",
    ...
}

Подключить с помощью AutoRequire

{
  "require": [{
    "namespace": "Pllano\\Caching",
      "dir": "/pllano/cache/src",
      "link": "https://github.com/pllano/cache/archive/master.zip",
      "git": "https://github.com/pllano/cache",
      "name": "cache",
      "version": "master",
      "vendor": "pllano",
      "state": "1",
      "system_package": "1"
    }, {
      "namespace": "Cache",
      "dir": "/cache/cache/src",
      "link": "https://github.com/php-cache/cache/archive/1.0.0.zip",
      "git": "https://github.com/php-cache/cache",
      "name": "cache",
      "version": "1.0.0",
      "vendor": "cache",
      "state": "1",
      "system_package": "0"
    }, {
      "namespace": "Predis",
      "dir": "/predis/predis/src",
      "link": "https://github.com/nrk/predis/archive/v1.1.1.zip",
      "git": "https://github.com/nrk/predis",
      "name": "predis",
      "version": "1.1.1",
      "vendor": "predis",
      "state": "1",
      "system_package": "0"
    }, {
      "namespace": "League\\Flysystem",
      "dir": "/league/flysystem/src",
      "link": "https://github.com/thephpleague/flysystem/archive/1.0.42.zip",
      "git": "https://github.com/thephpleague/flysystem",
      "name": "flysystem",
      "version": "1.0.42",
      "vendor": "league",
      "state": "1",
      "system_package": "0"
  }, {
      "namespace": "Psr\\SimpleCache",
      "dir": "/psr/simple-cache/src",
      "link": "https://github.com/php-fig/simple-cache/archive/1.0.0.zip",
      "git": "https://github.com/php-fig/simple-cache",
      "name": "simple-cache",
      "version": "1.0.0",
      "vendor": "psr",
      "state": "1",
      "system_package": "1"
    }, {
      "namespace": "Psr\\Log",
      "dir": "/psr/log/Psr/Log",
      "link": "https://github.com/php-fig/log/archive/1.0.2.zip",
      "git": "https://github.com/php-fig/log",
      "name": "log",
      "version": "1.0.2",
      "vendor": "psr",
      "state": "1",
      "system_package": "1"
    }, {
      "namespace": "Doctrine\\Common\\Cache",
      "dir": "/doctrine/cache/lib/Doctrine/Common/Cache",
      "link": "https://github.com/doctrine/cache/archive/v1.6.2.zip",
      "git": "https://github.com/doctrine/cache",
      "name": "cache",
      "version": "1.6.2",
      "vendor": "doctrine",
      "state": "1",
      "system_package": "1"
    }
  ]
}

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2018-02-05

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固