定制 philasearch/cache 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

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

philasearch/cache

最新稳定版本:1.2.1

Composer 安装命令:

composer require philasearch/cache

包简介

PHP Website Caching Library for HTML and Objects

README 文档

README

Latest Stable Version Total Downloads Build Status

PHP Cache

PHP Cache is a simple caching library for HTML and objects.

Installing

Add the following to your composer.json

{
    "require": {
        "philasearch/cache": "1.1.*"
    }
}

Setup

Notice: I built this library agnostic to different cache providers, however, since I mainly use redis, redis is the only supported cache.

<?php

use Philasearch\Cache\Cache;
use Philasearch\Cache\CacheProviders;

// a redis cache at localhost and database of 0
$cache = new Cache ();

// a more specified cache
$cache = new Cache( CacheProviders::REDIS, 'tcp://127.0.0.1:6379?database=0');

Using Cached Objects

A cached object is a PHP object that has its values stored in the cache for easy storage and retrieval. In redis, this is done through the hash data type. When you recreate the object with the correct cache key, the object will be automatically resumed to its previous state.

<?php

use Philasearch\Cache\Cache;
use Philasearch\Cache\CacheProviders;

$cache = new Cache();

// a basic cached object
$object = $cache->createObject('cache_key'); 

// a cached object that expires in 10 seconds
$object = $cache->createObject('cache_key', 10);

// a cached object with a value foo that equals bar.
$object = $cache->createObject('cache_key', 0, ['foo' => 'bar']);

// filling the object with an array of variables
$object->fill(['foo' => 'bar']);

// setting a variable directly
$object->set('foo', 'bar');

// getting a variable
$foo = $object->get('foo');

Using Cached Trees

Cached trees are a way of having tree objects stored in the cache. These trees are also automatically resumed to the previous state if created with the same key.

<?php

use Philasearch\Cache\Cache;
use Philasearch\Cache\CacheProviders;

$cache = new Cache();

// a basic tree
$tree = $cache->createTree('cached_key');

// a tree that expires after 10 seconds
$tree = $cache->createTree('cached_key', 10);

// a root node with the id of 1 ('the id can also be a string')
$root = $tree->makeRootNode(1);

// a root node with the id of 1 and a value of foo that equals bar
$root = $tree->makeRootNode(1, ['foo' => 'bar']);

// set the value foo to bar
$root->set('foo', 'bar');

// get the value stored under bar
$root->get('foo');

// add a new child
$node = $root->addChild(2);

// add a new child with the value foo equaling bar
$node = $root->addChild(2, ['foo' => 'bar']);

// saving the tree
$tree->save();

// turns the tree to an array starting from root
$tree->getArray();

// turns the tree to an array starting at the child with the id of 2
$tree->getArray(2);

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: Unknown
  • 更新时间: 2014-09-09