xref: /plugin/combo/vendor/salesforce/handlebars-php/src/Handlebars/Cache/APC.php (revision 04fd306c7c155fa133ebb3669986875d65988276)
1*04fd306cSNickeau<?php
2*04fd306cSNickeau/**
3*04fd306cSNickeau *
4*04fd306cSNickeau * @category  Xamin
5*04fd306cSNickeau * @package   Handlebars
6*04fd306cSNickeau * @author    Joey Baker <joey@byjoeybaker.com>
7*04fd306cSNickeau * @author    Behrooz Shabani <everplays@gmail.com>
8*04fd306cSNickeau * @copyright 2013 (c) Meraki, LLP
9*04fd306cSNickeau * @copyright 2013 (c) Behrooz Shabani
10*04fd306cSNickeau * @license   MIT
11*04fd306cSNickeau * @link      http://voodoophp.org/docs/handlebars
12*04fd306cSNickeau */
13*04fd306cSNickeau
14*04fd306cSNickeaunamespace Handlebars\Cache;
15*04fd306cSNickeauuse Handlebars\Cache;
16*04fd306cSNickeau
17*04fd306cSNickeauclass APC implements Cache
18*04fd306cSNickeau{
19*04fd306cSNickeau
20*04fd306cSNickeau    /**
21*04fd306cSNickeau     * Get cache for $name if exist.
22*04fd306cSNickeau     *
23*04fd306cSNickeau     * @param string $name Cache id
24*04fd306cSNickeau     *
25*04fd306cSNickeau     * @return mixed data on hit, boolean false on cache not found
26*04fd306cSNickeau     */
27*04fd306cSNickeau    public function get($name)
28*04fd306cSNickeau    {
29*04fd306cSNickeau        if (apc_exists($name)) {
30*04fd306cSNickeau            return apc_fetch($name);
31*04fd306cSNickeau        }
32*04fd306cSNickeau        return false;
33*04fd306cSNickeau    }
34*04fd306cSNickeau
35*04fd306cSNickeau    /**
36*04fd306cSNickeau     * Set a cache
37*04fd306cSNickeau     *
38*04fd306cSNickeau     * @param string $name  cache id
39*04fd306cSNickeau     * @param mixed  $value data to store
40*04fd306cSNickeau     *
41*04fd306cSNickeau     * @return void
42*04fd306cSNickeau     */
43*04fd306cSNickeau    public function set($name, $value)
44*04fd306cSNickeau    {
45*04fd306cSNickeau        apc_store($name, $value);
46*04fd306cSNickeau    }
47*04fd306cSNickeau
48*04fd306cSNickeau    /**
49*04fd306cSNickeau     * Remove cache
50*04fd306cSNickeau     *
51*04fd306cSNickeau     * @param string $name Cache id
52*04fd306cSNickeau     *
53*04fd306cSNickeau     * @return void
54*04fd306cSNickeau     */
55*04fd306cSNickeau    public function remove($name)
56*04fd306cSNickeau    {
57*04fd306cSNickeau        apc_delete($name);
58*04fd306cSNickeau    }
59*04fd306cSNickeau
60*04fd306cSNickeau}
61