ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
ApcCache.php
Go to the documentation of this file.
1<?php
2
3/*
4 * This file is part of the Assetic package, an OpenSky project.
5 *
6 * (c) 2010-2014 OpenSky Project Inc
7 *
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
10 */
11
12namespace Assetic\Cache;
13
19class ApcCache implements CacheInterface
20{
21 public $ttl = 0;
22
26 public function has($key)
27 {
28 return apc_exists($key);
29 }
30
34 public function get($key)
35 {
36 $value = apc_fetch($key, $success);
37
38 if (!$success) {
39 throw new \RuntimeException('There is no cached value for '.$key);
40 }
41
42 return $value;
43 }
44
48 public function set($key, $value)
49 {
50 $store = apc_store($key, $value, $this->ttl);
51
52 if (!$store) {
53 throw new \RuntimeException('Unable to store "'.$key.'" for '.$this->ttl.' seconds.');
54 }
55
56 return $store;
57 }
58
62 public function remove($key)
63 {
64 return apc_delete($key);
65 }
66}
$success
Definition: Utf8Test.php:86
Uses APC to cache files.
Definition: ApcCache.php:20
An exception for terminatinating execution or to throw for unit testing.
Interface for a cache backend.