40 lines
857 B
PHP
Executable file
40 lines
857 B
PHP
Executable file
<?php
|
|
/**
|
|
* cache api
|
|
*/
|
|
|
|
class Cache {
|
|
public static function get($key){
|
|
$r = q("SELECT `v` FROM `cache` WHERE `k`='%s' limit 1",
|
|
dbesc($key)
|
|
);
|
|
|
|
if (count($r)) return $r[0]['v'];
|
|
return null;
|
|
}
|
|
|
|
public static function set($key,$value) {
|
|
$r = q("SELECT * FROM `cache` WHERE `k`='%s' limit 1",
|
|
dbesc($key)
|
|
);
|
|
if(count($r)) {
|
|
q("UPDATE `cache` SET `v` = '%s', `updated = '%s' WHERE `k` = '%s' limit 1",
|
|
dbesc($value),
|
|
dbesc(datetime_convert()),
|
|
dbesc($key));
|
|
}
|
|
else {
|
|
q("INSERT INTO `cache` (`k`,`v`,`updated`) VALUES ('%s','%s','%s')",
|
|
dbesc($key),
|
|
dbesc($value),
|
|
dbesc(datetime_convert()));
|
|
}
|
|
}
|
|
|
|
public static function clear(){
|
|
q("DELETE FROM `cache` WHERE `updated` < '%s'",
|
|
dbesc(datetime_convert('UTC','UTC',"now - 30 days")));
|
|
}
|
|
|
|
}
|
|
|