HEX
Server: Microsoft-IIS/10.0
System: Windows NT ITPWINWEBSVR22 10.0 build 20348 (Windows Server 2022) AMD64
User: www.conferencesearch.co.uk (0)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: D:/web/matomo.vdk/vendor/matomo/cache/src/Backend/ArrayCache.php
<?php
/**
 * Matomo - free/libre analytics platform
 *
 * @link https://matomo.org
 * @license http://www.gnu.org/licenses/lgpl-3.0.html LGPL v3 or later
 *
 */
namespace Matomo\Cache\Backend;

use Matomo\Cache\Backend;

class ArrayCache implements Backend
{
    private $data = array();

    /**
     * {@inheritdoc}
     */
    public function doFetch($id)
    {
        return $this->doContains($id) ? $this->data[$id] : false;
    }

    /**
     * {@inheritdoc}
     */
    public function doContains($id)
    {
        // isset() is required for performance optimizations, to avoid unnecessary function calls to array_key_exists.
        return isset($this->data[$id]) || array_key_exists($id, $this->data);
    }

    /**
     * {@inheritdoc}
     */
    public function doSave($id, $data, $lifeTime = 0)
    {
        $this->data[$id] = $data;

        return true;
    }

    /**
     * {@inheritdoc}
     */
    public function doDelete($id)
    {
        unset($this->data[$id]);

        return true;
    }

    public function doFlush()
    {
        $this->data = array();

        return true;
    }

}