Support for xcache
This commit is contained in:
parent
51bf7f7d17
commit
9afe5c8670
1 changed files with 47 additions and 13 deletions
|
@ -66,12 +66,22 @@ function get_config($family, $key, $instore = false) {
|
|||
}
|
||||
}
|
||||
|
||||
// If APC is enabled then fetch the data from there
|
||||
// If APC is enabled then fetch the data from there, else try XCache
|
||||
if (function_exists("apc_fetch") AND function_exists("apc_exists"))
|
||||
if (apc_exists($family."|".$key)) {
|
||||
$val = apc_fetch($family."|".$key);
|
||||
$a->config[$family][$key] = $val;
|
||||
|
||||
if ($val === '!<unset>!')
|
||||
return false;
|
||||
else
|
||||
return $val;
|
||||
}
|
||||
elseif (function_exists("xcache_fetch") AND function_exists("xcache_isset"))
|
||||
if (xcache_isset($family."|".$key)) {
|
||||
$val = xcache_fetch($family."|".$key);
|
||||
$a->config[$family][$key] = $val;
|
||||
|
||||
if ($val === '!<unset>!')
|
||||
return false;
|
||||
else
|
||||
|
@ -87,18 +97,22 @@ function get_config($family, $key, $instore = false) {
|
|||
$val = (preg_match("|^a:[0-9]+:{.*}$|s", $ret[0]['v'])?unserialize( $ret[0]['v']):$ret[0]['v']);
|
||||
$a->config[$family][$key] = $val;
|
||||
|
||||
// If APC is enabled then store the data there
|
||||
// If APC is enabled then store the data there, else try XCache
|
||||
if (function_exists("apc_store"))
|
||||
apc_store($family."|".$key, $val, 600);
|
||||
elseif (function_exists("xcache_set"))
|
||||
xcache_set($family."|".$key, $val, 600);
|
||||
|
||||
return $val;
|
||||
}
|
||||
else {
|
||||
$a->config[$family][$key] = '!<unset>!';
|
||||
|
||||
// If APC is enabled then store the data there
|
||||
// If APC is enabled then store the data there, else try XCache
|
||||
if (function_exists("apc_store"))
|
||||
apc_store($family."|".$key, '!<unset>!', 600);
|
||||
elseif (function_exists("xcache_set"))
|
||||
xcache_set($family."|".$key, '!<unset>!', 600);
|
||||
}
|
||||
return false;
|
||||
}}
|
||||
|
@ -134,7 +148,7 @@ function set_config($family,$key,$value) {
|
|||
return $ret;
|
||||
}
|
||||
|
||||
$ret = q("UPDATE `config` SET `v` = '%s' WHERE `cat` = '%s' AND `k` = '%s' LIMIT 1",
|
||||
$ret = q("UPDATE `config` SET `v` = '%s' WHERE `cat` = '%s' AND `k` = '%s'",
|
||||
dbesc($dbvalue),
|
||||
dbesc($family),
|
||||
dbesc($key)
|
||||
|
@ -142,9 +156,11 @@ function set_config($family,$key,$value) {
|
|||
|
||||
$a->config[$family][$key] = $value;
|
||||
|
||||
// If APC is enabled then store the data there
|
||||
// If APC is enabled then store the data there, else try XCache
|
||||
if (function_exists("apc_store"))
|
||||
apc_store($family."|".$key, $value, 600);
|
||||
elseif (function_exists("xcache_set"))
|
||||
xcache_set($family."|".$key, $value, 600);
|
||||
|
||||
if($ret)
|
||||
return $value;
|
||||
|
@ -193,7 +209,7 @@ function get_pconfig($uid,$family, $key, $instore = false) {
|
|||
}
|
||||
}
|
||||
|
||||
// If APC is enabled then fetch the data from there
|
||||
// If APC is enabled then fetch the data from there, else try XCache
|
||||
if (function_exists("apc_fetch") AND function_exists("apc_exists"))
|
||||
if (apc_exists($uid."|".$family."|".$key)) {
|
||||
$val = apc_fetch($uid."|".$family."|".$key);
|
||||
|
@ -204,6 +220,16 @@ function get_pconfig($uid,$family, $key, $instore = false) {
|
|||
else
|
||||
return $val;
|
||||
}
|
||||
elseif (function_exists("xcache_get") AND function_exists("xcache_isset"))
|
||||
if (xcache_isset($uid."|".$family."|".$key)) {
|
||||
$val = xcache_get($uid."|".$family."|".$key);
|
||||
$a->config[$uid][$family][$key] = $val;
|
||||
|
||||
if ($val === '!<unset>!')
|
||||
return false;
|
||||
else
|
||||
return $val;
|
||||
}
|
||||
|
||||
|
||||
$ret = q("SELECT `v` FROM `pconfig` WHERE `uid` = %d AND `cat` = '%s' AND `k` = '%s' LIMIT 1",
|
||||
|
@ -216,18 +242,22 @@ function get_pconfig($uid,$family, $key, $instore = false) {
|
|||
$val = (preg_match("|^a:[0-9]+:{.*}$|s", $ret[0]['v'])?unserialize( $ret[0]['v']):$ret[0]['v']);
|
||||
$a->config[$uid][$family][$key] = $val;
|
||||
|
||||
// If APC is enabled then store the data there
|
||||
// If APC is enabled then store the data there, else try XCache
|
||||
if (function_exists("apc_store"))
|
||||
apc_store($uid."|".$family."|".$key, $val, 600);
|
||||
elseif (function_exists("xcache_set"))
|
||||
xcache_set($uid."|".$family."|".$key, $val, 600);
|
||||
|
||||
return $val;
|
||||
}
|
||||
else {
|
||||
$a->config[$uid][$family][$key] = '!<unset>!';
|
||||
|
||||
// If APC is enabled then store the data there
|
||||
// If APC is enabled then store the data there, else try XCache
|
||||
if (function_exists("apc_store"))
|
||||
apc_store($uid."|".$family."|".$key, '!<unset>!', 600);
|
||||
elseif (function_exists("xcache_set"))
|
||||
xcache_set($uid."|".$family."|".$key, '!<unset>!', 600);
|
||||
}
|
||||
return false;
|
||||
}}
|
||||
|
@ -238,13 +268,15 @@ function del_config($family,$key) {
|
|||
global $a;
|
||||
if(x($a->config[$family],$key))
|
||||
unset($a->config[$family][$key]);
|
||||
$ret = q("DELETE FROM `config` WHERE `cat` = '%s' AND `k` = '%s' LIMIT 1",
|
||||
$ret = q("DELETE FROM `config` WHERE `cat` = '%s' AND `k` = '%s'",
|
||||
dbesc($family),
|
||||
dbesc($key)
|
||||
);
|
||||
// If APC is enabled then store the data there
|
||||
// If APC is enabled then delete the data from there, else try XCache
|
||||
if (function_exists("apc_delete"))
|
||||
apc_delete($family."|".$key);
|
||||
elseif (function_exists("xcache_unset"))
|
||||
xcache_unset($family."|".$key);
|
||||
|
||||
return $ret;
|
||||
}}
|
||||
|
@ -274,7 +306,7 @@ function set_pconfig($uid,$family,$key,$value) {
|
|||
return $value;
|
||||
return $ret;
|
||||
}
|
||||
$ret = q("UPDATE `pconfig` SET `v` = '%s' WHERE `uid` = %d AND `cat` = '%s' AND `k` = '%s' LIMIT 1",
|
||||
$ret = q("UPDATE `pconfig` SET `v` = '%s' WHERE `uid` = %d AND `cat` = '%s' AND `k` = '%s'",
|
||||
dbesc($dbvalue),
|
||||
intval($uid),
|
||||
dbesc($family),
|
||||
|
@ -283,9 +315,11 @@ function set_pconfig($uid,$family,$key,$value) {
|
|||
|
||||
$a->config[$uid][$family][$key] = $value;
|
||||
|
||||
// If APC is enabled then store the data there
|
||||
// If APC is enabled then store the data there, else try XCache
|
||||
if (function_exists("apc_store"))
|
||||
apc_store($uid."|".$family."|".$key, $value, 600);
|
||||
elseif (function_exists("xcache_set"))
|
||||
xcache_set($uid."|".$family."|".$key, $value, 600);
|
||||
|
||||
|
||||
if($ret)
|
||||
|
@ -299,7 +333,7 @@ function del_pconfig($uid,$family,$key) {
|
|||
global $a;
|
||||
if(x($a->config[$uid][$family],$key))
|
||||
unset($a->config[$uid][$family][$key]);
|
||||
$ret = q("DELETE FROM `pconfig` WHERE `uid` = %d AND `cat` = '%s' AND `k` = '%s' LIMIT 1",
|
||||
$ret = q("DELETE FROM `pconfig` WHERE `uid` = %d AND `cat` = '%s' AND `k` = '%s'",
|
||||
intval($uid),
|
||||
dbesc($family),
|
||||
dbesc($key)
|
||||
|
|
Loading…
Reference in a new issue