From 6576aae938dcfba7322ec0f9f6e293f5ddf293b5 Mon Sep 17 00:00:00 2001 From: Michael Vogel Date: Tue, 6 Aug 2013 00:20:16 +0200 Subject: [PATCH] If APC is enabled then store config data there --- include/config.php | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/include/config.php b/include/config.php index d138d20534..af44f6cc2c 100644 --- a/include/config.php +++ b/include/config.php @@ -62,6 +62,15 @@ function get_config($family, $key, $instore = false) { return $a->config[$family][$key]; } } + + // If APC is enabled then fetch the data from there + 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; + return $val; + } + $ret = q("SELECT `v` FROM `config` WHERE `cat` = '%s' AND `k` = '%s' LIMIT 1", dbesc($family), dbesc($key) @@ -117,6 +126,10 @@ function set_config($family,$key,$value) { $a->config[$family][$key] = $value; + // If APC is enabled then store the data there + if (function_exists("apc_store")) + apc_store($family."|".$key, $value, 600); + if($ret) return $value; return $ret; @@ -164,6 +177,14 @@ function get_pconfig($uid,$family, $key, $instore = false) { } } + // If APC is enabled then fetch the data from there + if (function_exists("apc_fetch") AND function_exists("apc_exists")) + if (apc_exists($uid."|".$family."|".$key)) { + $val = apc_fetch($uid."|".$family."|".$key); + $a->config[$uid][$family][$key] = $val; + return $val; + } + $ret = q("SELECT `v` FROM `pconfig` WHERE `uid` = %d AND `cat` = '%s' AND `k` = '%s' LIMIT 1", intval($uid), dbesc($family), @@ -191,6 +212,10 @@ function del_config($family,$key) { dbesc($family), dbesc($key) ); + // If APC is enabled then store the data there + if (function_exists("apc_delete")) + apc_delete($family."|".$key); + return $ret; }} @@ -228,6 +253,11 @@ function set_pconfig($uid,$family,$key,$value) { $a->config[$uid][$family][$key] = $value; + // If APC is enabled then store the data there + if (function_exists("apc_store")) + apc_store($uid."|".$family."|".$key, $value, 600); + + if($ret) return $value; return $ret;