PluginProbe
Independent Analytics – WordPress Analytics Plugin / 2.8.7
Independent Analytics – WordPress Analytics Plugin v2.8.7
2.15.5 2.15.4 2.15.3 2.15.2 2.15.1 2.15.0 2.14.10 trunk 1.1 1.10 1.10.1 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.17.1 1.17.2 1.17.3 1.17.4 1.18 1.18.1 1.19.0 All 120 releases
independent-analytics / vendor / matomo / device-detector / Cache / StaticCache.php
vendor/matomo/device-detector/Cache
CacheInterface.php 928 B 2 years ago DoctrineBridge.php 1.3 KB 2 years ago LaravelCache.php 1.0 KB 2 years ago PSR16Bridge.php 1.4 KB 2 years ago PSR6Bridge.php 1.5 KB 2 years ago StaticCache.php 1.4 KB 2 years ago
StaticCache.php
66 lines 1.4 KB Raw Download Zip
1 <?php
2
3 /**
4 * Device Detector - The Universal Device Detection library for parsing User Agents
5 *
6 * @link https://matomo.org
7 *
8 * @license http://www.gnu.org/licenses/lgpl.html LGPL v3 or later
9 */
10 declare (strict_types=1);
11 namespace IAWPSCOPED\DeviceDetector\Cache;
12
13 /**
14 * Class StaticCache
15 *
16 * Simple Cache that caches in a static property
17 * (Speeds up multiple detections in one request)
18 * @internal
19 */
20 class StaticCache implements CacheInterface
21 {
22 /**
23 * Holds the static cache data
24 * @var array
25 */
26 protected static $staticCache = [];
27 /**
28 * @inheritdoc
29 */
30 public function fetch(string $id)
31 {
32 return $this->contains($id) ? self::$staticCache[$id] : \false;
33 }
34 /**
35 * @inheritdoc
36 */
37 public function contains(string $id) : bool
38 {
39 return isset(self::$staticCache[$id]) || \array_key_exists($id, self::$staticCache);
40 }
41 /**
42 * @inheritdoc
43 */
44 public function save(string $id, $data, int $lifeTime = 0) : bool
45 {
46 self::$staticCache[$id] = $data;
47 return \true;
48 }
49 /**
50 * @inheritdoc
51 */
52 public function delete(string $id) : bool
53 {
54 unset(self::$staticCache[$id]);
55 return \true;
56 }
57 /**
58 * @inheritdoc
59 */
60 public function flushAll() : bool
61 {
62 self::$staticCache = [];
63 return \true;
64 }
65 }
66