| Server IP : 54.36.91.62 / Your IP : 216.73.217.111 Web Server : Apache System : Linux webm013.cluster127.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64 User : coopiak ( 151928) PHP Version : 8.3.23 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/coopiak/amisdesseniors-fr/annonces/plugins/system/nrframework/NRFramework/ |
Upload File : |
<?php
/**
* @author Tassos Marinos <info@tassos.gr>
* @link https://www.tassos.gr
* @copyright Copyright © 2024 Tassos All Rights Reserved
* @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later
*/
/**
* This file is deprecated. Use CacheManager instead of Cache.
*/
namespace NRFramework;
defined('_JEXEC') or die;
use \NRFramework\CacheManager;
use \Joomla\CMS\Factory;
/**
* Caching mechanism
*/
class Cache
{
/**
* Check if has alrady exists in memory
*
* @param string $hash The hash string
*
* @return boolean
*/
static public function has($hash)
{
$cache = CacheManager::getInstance(Factory::getCache('tassos', ''));
return $cache->has($hash);
}
/**
* Returns hash value
*
* @param string $hash The hash string
* @param string $clone Why the hell we clone objects here?
*
* @return mixed False on error, Object on success
*/
static public function get($hash, $clone = true)
{
$cache = CacheManager::getInstance(Factory::getCache('tassos', ''));
return $cache->get($hash, $clone);
}
/**
* Sets on memory the hash value
*
* @param string $hash The hash string
* @param mixed $data Can be string or object
*
* @return mixed
*/
static public function set($hash, $data)
{
$cache = CacheManager::getInstance(Factory::getCache('tassos', ''));
return $cache->set($hash, $data);
}
/**
* Reads hash value from memory or file
*
* @param string $hash The hash string
* @param boolean $force If true, the filesystem will be used as well on the /cache/ folder
*
* @return mixed The hash object valuw
*/
static public function read($hash, $force = false)
{
$cache = CacheManager::getInstance(Factory::getCache('tassos', ''));
return $cache->read($hash, $force);
}
/**
* Writes hash value in cache folder
*
* @param string $hash The hash string
* @param mixed $data Can be string or object
* @param integer $ttl Expiration duration in milliseconds
*
* @return mixed The hash object value
*/
static public function write($hash, $data, $ttl = 0)
{
$cache = CacheManager::getInstance(Factory::getCache('tassos', ''));
return $cache->write($hash, $data, $ttl);
}
/**
* Memoize a function to run once per runtime
*
* @param string $key The key to store the result of the callback
* @param callback $callback The callable anonymous function to call
*
* @return mixed
*/
static public function memo($key, callable $callback)
{
$hash = md5($key);
if (Cache::has($hash))
{
return Cache::get($hash);
}
return Cache::set($hash, $callback());
}
}